Apparatuses, Methods and Systems for Information Querying and Serving on the Internet Based on Profiles

ABSTRACT

Apparatuses, methods, and systems for information querying and serving on the internet based on profiles. Information and/or advertisement providers may use a code triggered information server to serve context, demographic, and behavior targeted information to users on the internet. Users trigger the provision of information by scanning or observing codes or information, or by selecting web links. The triggers, together with geographic, temporal, and user-specific information, are obtained by the server that receives, processes, and records the message. Based on these messages and a user profile the server selects information to serve to a user on the internet from an information base. In one embodiment, information may also be served to users without any initiating trigger. This is based on user trajectories or web-surfing habits deduced from the accumulated history of triggers.

PRIORITY CLAIMS AND RELATED APPLICATIONS

This disclosure describes inventive aspects of at least eight distinctinventions, including:

information querying and serving on mobile devices based on ambientconditions (with a suggested Class/Subclass of 707/10);

code-triggered information querying and serving on mobile devices basedon profiles (with a suggested Class/Subclass of 709/206);

anticipatory information querying and serving on mobile devices based onprofiles (with a suggested Class/Subclass of 709/217);

coordinating personnel based on profiles (with a suggestedClass/Subclass of 705/9);

determining and announcing proximity between trajectories (with asuggested Class/Subclass of 701/302);

information querying and serving in a virtual world based on profiles(with a suggested Class/Subclass of 463/42);

information querying and serving on the internet based on profiles (witha suggested Class/Subclass of 705/14); and

ambiguous code-triggered information querying and serving on mobiledevices (with a suggested Class/Subclass of 235/494).

The instant application details matter directed to information queryingand serving on the internet based on profiles (suggested class/subclass:705/14). However, in order to develop a reader's understanding of theinvention(s), the descriptions of the other invention(s) have beencompiled into a single disclosure to illustrate and clarify how aspectsof these inventions operate independently, interoperate as betweenindividual inventions, and/or cooperate collectively. The disclosuregoes on to further describe the interrelations and synergies as betweenany of the various inventions within the context of an overarchinginventive system; all of which is to further ensure compliance with 35U.S.C. §112.

Applicants hereby claim priority under 35 USC §119 for U.S. provisionalpatent application Ser. No. 60/827,381 filed Sep. 28, 2006, entitled“APPARATUSES, METHODS AND SYSTEMS FOR CODE TRIGGERED INFORMATIONQUERYING AND SERVING,” attorney docket no. 17896-004PV; U.S. provisionalpatent application Ser. No. 60/828,959 filed Oct. 10, 2006, entitled“METHOD FOR INFORMATION QUERYING AND SERVING ON MOBILE DEVICES BASED ONAMBIENT CONDITIONS,” attorney docket no. 17896-004PVI; U.S. provisionalpatent application Ser. No. 60/828,962 filed Oct. 10, 2006, entitled“METHOD FOR CODE-TRIGGERED INFORMATION QUERYING AND SERVING ON MOBILEDEVICES BASED ON PROFILES,” attorney docket no. 17896-004PV2; U.S.provisional patent application Ser. No. 60/828,970 filed Oct. 10, 2006,entitled “METHOD FOR ANTICIPATORY INFORMATION QUERYING AND SERVING ONMOBILE DEVICES BASED ON PROFILES,” attorney docket no. 17896-004PV3;U.S. provisional patent application Ser. No. 60/828,969 filed Oct. 10,2006, entitled “METHOD FOR COORDINATING PERSONNEL BASED ON PROFILES,”attorney docket no. 17896-004PV4; U.S. provisional patent applicationSer. No. 60/828,967 filed Oct. 10, 2006, entitled “METHOD FORDETERMINING AND ANNOUNCING PROXIMITY BETWEEN TRAJECTORIES,” attorneydocket no. 17896-004PV5; U.S. provisional patent application Ser. No.60/828,968 filed Oct. 10, 2006, entitled “METHOD FOR INFORMATIONQUERYING AND SERVING IN A VIRTUAL WORLD BASED ON PROFILES,” attorneydocket no. 17896-004PV6; and U.S. provisional patent application Ser.No. 60/828,965 filed Oct. 10, 2006, entitled “METHOD FOR INFORMATIONQUERYING AND SERVING ON THE INTERNET BASED ON PROFILES,” attorney docketno. 17896-004PV7.

This disclosure is also related to co-pending Patent Cooperation Treatypatent application serial no. PCT/______, filed Sep. 28, 2007, entitled“APPARATUS, METHOD AND SYSTEM FOR CODE TRIGGERED INFORMATION QUERYINGAND SERVING,” attorney docket no. 17896-004PC; U.S. non-provisionalpatent application Ser. No. ______, filed Sep. 28, 2007, entitled“APPARATUSES, METHODS AND SYSTEMS INFORMATION QUERYING AND SERVING BASEDON AMBIENT CONDITIONS,” attorney docket no. 17896-004US1; U.S.nonprovisional patent application Ser. No. ______, filed Sep. 28, 2007,entitled “APPARATUSES, METHODS AND SYSTEMS FOR CODE-TRIGGEREDINFORMATION QUERYING AND SERVING ON MOBILE DEVICES BASED ON PROFILES,”attorney docket no. 17896-004US2; U.S. non-provisional patentapplication Ser. No. ______, filed Sep. 28, 2007, entitled “APPARATUSES,METHODS AND SYSTEMS FOR ANTICIPATORY INFORMATION QUERYING AND SERVING ONMOBILE DEVICES BASED ON PROFILES,” attorney docket no. 17896-004US3;U.S. non-provisional patent application Ser. No. ______, filed Sep. 28,2007, entitled “APPARATUSES, METHODS AND SYSTEMS FOR COORDINATINGPERSONNEL BASED ON PROFILES,” attorney docket no. 17896-004US4; U.S.non-provisional patent application Ser. No. ______, filed Sep. 28, 2007,entitled “APPARATUSES, METHODS AND SYSTEMS FOR DETERMINING ANDANNOUNCING PROXIMITY BETWEEN TRAJECTORIES,” attorney docket no.17896-004US5; U.S. non-provisional patent application Ser. No. ______,filed Sep. 28, 2007, entitled “APPARATUSES, METHODS AND SYSTEMS FORINFORMATION QUERYING AND SERVING IN A VIRTUAL WORLD BASED ON PROFILES,”attorney docket no. 17896-004US6; and U.S. nonprovisional patentapplication Ser. No. ______, filed Sep. 28, 2007, entitled “APPARATUSES,METHODS AND SYSTEMS FOR AMBIGUOUS CODE-TRIGGERED INFORMATION QUERYINGAND SERVING ON MOBILE DEVICES,” attorney docket no. 17896-004US8.

The entire contents of the aforementioned applications are hereinexpressly incorporated by reference.

FIELD

The present disclosure is directed generally to apparatuses, methods,and systems for marketing and information dissemination, and moreparticularly, to apparatuses, methods and systems for informationquerying and serving on the internet based on profiles.

BACKGROUND

In recent years, the proliferation of mobile consumer electronic andwireless networking technology has allowed the development of a host ofbusiness methods that incorporate Global Positioning System (GPS)location awareness for mobile devices. In addition, various advertisingsystems, such as Google's AdSense, allow advertisers to placeadvertisements in contexts with which consumers are interested.Information encoding symbologies, such as barcodes, data matrices, orRadio Frequency Identification (RFID) tags, as well as the technology todecode them have come about.

SUMMARY

The present disclosure is directed to apparatuses, methods and systemsfor information querying and serving on the internet based on profiles.Existing advertising schemes fail to take full advantage of the trackingand context targeting possibilities enabled by the present disclosure.In particular, they do not allow information and/or advertisementserving on the internet that is targeted to the individual consumer'scharacteristic profile, behavioral patterns, and present contextualsurroundings either in real space of cyberspace. For example, theycannot supply web-based advertisements on an internet enabled mobiledevice for goods and services located near a mobile user that are alsochosen based on the user's behavioral patterns and stated interests. Assuch, this disclosure details a code triggered information server (CTIS)that delivers information on the internet based on user activities, suchas may be registered by codes scanned by mobile devices or website linksselected on a computer, as well as user characteristics and anaccumulated history of user activities. In one embodiment, the codetriggered information server allows advertisers to supply productinformation on websites to the consumers who would be most interested insuch ads; this may be achieved by the CTIS selecting advertising contentbased on a combination of the context of the code that the consumerscanned or the web link that the user selected, the consumer's statedinterests as recorded in his or her user profile, the consumer'sdemographic profile, situational information, and a record of scannedcodes or web links; these factors can be analyzed and employed by theCTIS for both user tracking and behavioral profiling/targeting. Forexample, a user with a stated interest in running and a recent patternof scanning codes related to shoes may be served a web-basedadvertisement on his/her internet-enabled mobile device for a newrunning shoe being sold at a nearby shoe store. In another example, auser profiled to be a teenager and having a pattern of browsing websitesrelated to comic books may be served a web-based ad for the newest comicbook themed movie when he/she visits a movie-listings website.

As the first code-triggered system for serving Ads on the internet withgeographic, context, and behavioral specificity based on user profiles,the CTIS is designed to deliver targeted Ads to users on the internetwhile simultaneously providing detailed customer tracking information toAd providers. The CTIS moves beyond contextual advertising schemes; itsupplies Ad providers with greater precision and focus to provideconsumers with the information that is most relevant to their interests,behavioral patterns, and space-time and/or cyberspace-time trajectoriesto maximize the possibility of consummating a transaction. In oneembodiment, the CTIS is designed to allow advertisers to place ads onthe internet at specific times of the day and/or to be triggered atspecific geographic locations such as to increase the likelihood ofgarnering the attention of prospective customers. In another embodimentthe CTIS is designed to allow advertisers to obtain better rates ofcustomer acquisition by supplying Ads on the internet for goods andservices sold on websites that a prospective customer is likely to visitnext. In another embodiment, the CTIS yields time and location resolvedrecords of scans for the determination of coded advertisementvisibility. In another embodiment, the CTIS provides rapid and evolvinggeographic and historical statistical profiling of user interest,web-surfing habits, and coded advertisement quality.

From the user point of view, the CTIS provides a mechanism by which, inexchange for officially registering interest and providing basicinformation, he/she can receive the most targeted solicitations,enhanced content, sales offers/coupons, and/or the like. User benefitsinclude: relevant and targeted advertising; mobile context specificinformation; contiguous location and/or immediate event information;coupons and/or offers for many types of goods and services; and/or thelike.

At the same time, the system grants the advertiser a powerful trackingtool, to monitor behavioral patterns of consumers on individual,demographic, temporal, and geographic scales. This allows, among otherthings, the deployment of anticipatory advertising: servingadvertisements to users in anticipation of their locations and/orpotential interests based on an accumulated history of user trackingdata. Other Ad provider benefits include: compilation of highly specificcustomer tracking information, including customer space-timetrajectories; location and/or time specific advertising; highly flexiblecoded advertising placement; quick and updated determination of codedadvertisement visibility; and/or the like.

Of benefit to both users and Ad providers is the fact that users improvethe specificity of their Reply Messages with each successive scan, sinceeach scan further refines the contents of the user profile. Users thushave a motivation to scan as many codes as possible related to subjectsof interest and will thereby be exposed to more advertisements than inmore traditional, passive advertising and marketing schemes.

Ad providers participate by contributing content to an Information Basethat categorizes and labels that content under a number ofconsiderations, such as subject matter, geographic and temporalidentity, demographic specificity, and/or the like. Elements of theInformation Base can then be compared via these labels with comparablelabels found in a database of user profiles in order to match contentwith users via subject, location, time, demographic category, and/or thelike. As such, the CTIS efficiently facilitates commerce by providingadvertising to consumers with highly tailored specificity.

BRIEF DESCRIPTION OF THE DRAWINGS

The accompanying appendices and/or drawings illustrate variousnon-limiting, example, inventive aspects in accordance with the presentdisclosure:

FIGS. 1 a-b show combined logic and data flow block diagram illustratinga general overview of embodiments of the CTIS;

FIG. 2 shows a particular, exemplary embodiment of the ETIC, whereincontextual information and advertising is served to the user related toa news article in the business section of a media publication;

FIG. 3 shows user trajectories through a network of Ad provider zones;

FIG. 4 shows an embodiment of the web interface for user registration;

FIGS. 5 a-c show three types of 2D barcodes that may be employed withinthe CTIS and logic flow for code enhancement in one embodiment of CTISoperation;

FIG. 6 shows an illustration of one embodiment of the Scan Message datastructure;

FIG. 7 shows an illustration of one embodiment of the use profile datastructure;

FIG. 8 shows an illustration of one embodiment of the Information Base(Ad) data structure;

FIG. 9 shows a logic flow diagram of one embodiment of the user profilequery heuristic;

FIG. 10 shows an exemplary histogram of Ad provider zone breaches;

FIGS. 11 a-d show some embodiments of systems for selecting nontriggeredinformation to serve to users;

FIGS. 12 a-b show examples of coupons provided by the CTIS;

FIG. 13 shows a combined logic and data flow block diagram for anembodiment of the CTIS wherein contextual Ads are replaced by Ads basedon ambient conditions;

FIG. 14 shows a combined logic and data flow block diagram for aparticular exemplary embodiment of the CTIS in which allergy medicationAds are served in response to a high pollen count;

FIG. 15 shows a combined logic and data flow block diagram for aparticular exemplary embodiment of the CTIS in which sunscreen Ads areserved in response to heat and high UV levels;

FIG. 16 shows a combined logic and data flow block diagram for anembodiment of the ens wherein the selection of contextual Ads isinfluenced by ambient conditions;

FIG. 17 shows a combined logic and data flow block diagram for aparticular exemplary embodiment of the CTIS in which an Ad for a luxuryconvertible is served based on warm weather conditions, a scanned code,and the user profile;

FIG. 18 shows a combined logic and data flow block diagram for aparticular exemplary embodiment of the CTIS in which an Ad for Floridatravel is served based on cold/rainy weather conditions, a scanned code,and the user profile;

FIG. 19 shows a combined logic and data flow block diagram for aparticular exemplary embodiment of the CTIS in which an Ad for an icecream shop is served based on warm weather conditions, a scanned code,and the user profile;

FIG. 20 shows a combined logic and data flow block diagram for aparticular exemplary embodiment of the CTIS in which an Ad for ponchosand umbrellas is served based on rainy weather conditions, a scannedcode, and the user profile;

FIG. 21 shows a combined logic and data flow block diagram for anembodiment of the CTIS wherein Ads are served to a User Agent device;

FIG. 22 shows a combined logic and data flow block diagram for aparticular exemplary embodiment of the CTIS in which an Ad for a sportsteam's season tickets is served along with a pay-per-view event supplieddirectly to a user's cable box;

FIG. 23 shows a combined logic and data flow block diagram for aparticular exemplary embodiment of the CTIS in which an Ad for virusscan subscription software is served; and

FIG. 24 shows a computer systemization of the CTIS.

The leading number of each reference number within the drawingsindicates the figure in which that reference number is introduced and/ordetailed. As such, a detailed discussion of reference number 101 wouldbe found and/or introduced in FIG. 1. Reference number 201 is introducedin FIG. 2, etc.

DETAILED DESCRIPTION

In one embodiment, the disclosed CTIS employs two basic actors: (i) auser (100 a) capable of registering interest in an activity,transmitting and receiving data, and displaying information; and (ii) aserver (101) capable of communicating with the user, storing/updatinguser profiles, and selecting information to serve to the user. Inaddition to the two basic actors, the CTIS enables the creation of twotypes of transactional articles: i) Scan Messages (115) and ii) ReplyMessages (145). The CTIS provides context-specific Reply Messages inresponse to Scan Messages, which are prepared in response to theregistration of activity interest by the user, in order to supplyinformation and/or advertising to the user. The CTIS generates ReplyMessages by processing Scan Message content with user profileinformation, containing basic profiling data as well as a history ofScan Messages supplied by a given user. As such, Reply Messages aretransactional articles that heighten a provider's opportunity to supplyrelevant and targeted information and/or advertising to the user that isboth context and user specific. Without loss of generality, we willheretofore refer to the information and/or advertising content of ReplyMessages as “Ads”. The CTIS may also elect to send context anduser-specific Reply Messages based solely on the user profile, withoutthe user having recently registered activity interest, if it isdetermined from the user's profile, particularly the history of ScanMessages, that a particular Ad is appropriate.

In one embodiment, users of the CTIS scan codes to register interest andthe CTIS acts as a portal for consumers to access informationsupplemental to the context in which the codes are found. Users may scancodes found in media publications, on billboards or signs, on consumerproducts or packages, on websites or television screens, and/or thelike. In doing so, the users may identify themselves via anidentification code specific to the mobile device and service accountwith which the scan is made. At the same time, the scanned code can berecorded, as well as the time of day and user location; such informationmay form the basis of consumer profiles that may be saved by the CTIS.As these scans are indicative of interest in various subjects, goods,and/or services, they may serve as a basis for an individual customertracking system. As such, advertisers can finely tune and efficientlytailor their efforts towards achieving maximum return on the advertisingexpenditure.

Code Triggered Information Server Basic Overview

FIG. 1 a shows a combined logic and data flow block diagram illustratinga general overview of the CTIS in one embodiment. The CTIS may beconfigured so that a user (100 a) may scan a digital code (105) with ascanning device (100 b), as for example by using a cell phone camera toscan and/or take a picture of a barcode, 2d code, matrix code, datamatrix, QR code, or other such symbology. An example of a mobile deviceand software capable of such code capture is the Nokia 6600 cellulartelephone equipped with ConnexTo software. Alternatively, the CTIS maybe triggered by the user selecting an internet link (such as on aninternet enabled mobile device), by making decisions within a virtualworld (such as a massively multiplayer online game), and/or the like.Without loss of generality, all such forms of interest-registering CTIStriggering will be referred to as “code scanning”. The time and location(as determined by GPS, GPRS, or other such geopositioning technologies)of the mobile device are determined (110), and a Scan Message (115) isgenerated containing a user identification (ID), a hardware ID thatidentifies the type of mobile device being used, a geocode (location ofthe device), a timestamp, and the scanned code (see. FIG. 4 anddiscussion of Scan Message below). Additional user-input information mayalso be supplied at this point. The Scan Message is packaged and sent(120) to a server (101) that receives and recognizes it (125). Theuser's profile, specific to the supplied user ID, is updated with thenew Scan Message (i.e., it is added as a transaction to their profiletransaction history) and queried (130) for information to use in thepreparation of a Reply Message (140) that is also based on the contentof the current Scan Message. The server selects (135) the Ad content(see FIG. 7) of the Reply Message (145) from an Information Base andsends it to the user's mobile display device, which displays thepertinent content to the user (150).

In one implementation, the Scan Message and/or scanned code may be sentto the server (101) by a Multimedia Messaging Service (MMS) protocol. Inother implementations, a wide variety of other communication protocolsmay be employed, including but not limited to: Short Messaging Service(SMS), instant messaging, web browser based messaging, email, EnhancedMessaging System (EMS), TCP/IP, WAP, and/or the like.

In one implementation, the server (101) may be addressed by a shortcode, short numbers, Common Short Code (CSC), and/or the like forsending the Scan Message and/or scanned code. For example, a short codemay appear alongside a code in a print publication, and a user may beinformed that the scanned code should be sent to the indicated shortcode number in order to retrieve a Reply Message, advertisement, coupon,and/or the like. In other implementations, other addressing means may beemployed, such as an ordinary telephone number, an email address, auniversal resource locater (URL), and/or the like. In anotherimplementation, the short code and/or other server address may beencoded within part of the code itself. When the user scans the codewith his or her mobile device, the code may be partially decoded by theclient device to extract the address and automatically send the rest ofthe code thereto.

FIG. 1 b shows an implementation of combined logic and data flow inanother embodiment of CTIS operation. A code (155) is scanned by acamera phone (156), and the resulting image content is converted to anMMS format to be sent via short code (157) through a gateway provider(158) to the CTIS (159) server. At the server, the image information maybe enhanced, manipulated, and/or otherwise processed (160) so as to aidin determining the appropriate content to serve in response. Afterenhancement, the image content is read (161) and the content and formatfor the appropriate response is determined (162) (see, e.g., FIGS.9-11). A response message is formed in MMS format (163) and is sent(164) back to a gateway provider (158) to be served to the user's cameraphone (156).

In an alternative implementation, the scanned code may be directlydecoded on the client mobile device instead of on the server. Thedecoded content may then be converted to MMS format and sent via shortcode to the server in order to retrieve the appropriate contentassociated with the code. That content may be returned from the serverto the client mobile device by means of an MMS protocol as well.

For illustration, the CTIS is shown in FIG. 2 for a particular,exemplary embodiment: providing targeted and contextual information andadvertising to the user related to a news article. Here, a user employsa cell phone to scan a code associated with an article in the Businesssection of a media publication (207), such as by using the phone's builtin camera to photograph a 2D matrix code (e.g., QR code). The locationof the scan (San Francisco, Calif.) is determined by the phone's builtin GPS receiver (212), and this location is incorporated as a geocode,along with the user ID, the hardware ID of the particular type of device(e.g., cell phone) used, the time, and the code content, into a ScanMessage. This is sent to a server via the cell phone's data connection(e.g., wireless internet systems such as IxEV-DO), and the serverqueries a database of user profiles based on the supplied user ID inorder to update the appropriate user profile with the content of thecurrent Scan Message and to determine what, if any, information in theuser profile may be relevant to the preparation of the current ReplyMessage. Here, the server recognizes that the user is 55 years of ageand has recently been scanning articles and/or ads related toinvestments and retirement planning (232). In one embodiment, the usercan supply a list of interests to be considered in addition to thoseculled from their scan history. The server selects the appropriate Adcontent to include in the Reply Message, comprised in this case of linksto Finance headlines, quick links to saved stock quotes (237), and acontextual brokerage advertisement (238), including information onbranch locations in San Francisco (212) near the user. This reply issent by the server to the user's mobile device which displays theappropriate message content.

In one embodiment, the CTIS can serve information to the user based onthe collected knowledge of user space-time trajectories contained in theuser profile, without the need for any initiating code scan. Thisembodiment is best illustrated by example, as drawn in FIG. 3. Here, auser rides a bus from home (300) to work (310) on four of the last fivedays, and takes a different bus to his doctor's office (330) on theremaining day. The space-time trajectories for the four work trips (305)and the one doctor trip (325) are determined by codes that the userscans with his cell phone from a newspaper during the bus rides. In thisexample, the user is assumed to scan a code every ten minutes startingat 7:30 AM until the destination is reached, and the geographic locationof each scan is indicated by the position of the timestamp along eachtrajectory. In one embodiment, tracking occurs without scanning, simplyby having the device send geocodes and timestamps by itself. Along theway to his destinations, the user passes a number of Ad providers(marked with X's) with Ad content in the CTIS Information Base, withdotted circles indicating the locus of points that are a distance of twomiles from each provider. One Ad provider in particular (315), a gourmetcoffee shop, is within two miles (320) of the user's space-timetrajectory at 7:50 AM in four of the last five days. The user's profilealso lists “coffee” as an interest, both based on user specificationsduring registration and on the user's advertisement and article scanrecord. Consequently, on the sixth day, the server supplies the userwith an advertisement for the coffee shop (315) at 7:45 AM

Code Triggered Information Server Detailed Overview

User and Ad Provider Participation

The CTIS is enabled by the participation of Ad providers and users. Inone embodiment, Ad providers supply Ads for storage on the CTIS server.In an alternative embodiment, the Ads are stored on third party serversthat are referenced by the CTIS server. The user experience may beenhanced by the incorporation of personal preferences and demographicinformation to optimize the targeting of Ad content. Consequently, oneembodiment would incorporate a user registration procedure. Users mayregister for the CTIS via the internet, telephone, postal mail, and/orthe like. If a particular embodiment of the CTIS requires clientsoftware for the user to install, this could be supplied upon successfuluser registration. FIG. 4 shows an exemplary embodiment of a userregistration interface 400, wherein a user can input Basic Info 405(e.g., member ID, password, secret question/answer, e-mail address,etc.), Device Info 410 (e.g., mobile phone carrier, phone manufacturer &model, operating system, etc.), Demographics 415 (e.g., gender, year ofbirth, zip code, country of residence, household income, job title,industry, etc.), and Content Preferences 420 (e.g., interests,subscriptions, content delivery options, personal history options, cacheoptions, geo-tracking options, ad delivery options, etc.) in a pluralityof fields 425. In an alternative embodiment, a basic user identificationpacket (e.g., a “cookie”) is sent with a user's first code scan, thusestablishing a basic user profile that can be filled in with greaterdetail at a later time.

Code Capture (105)

Scannable codes within the CTIS may be found in a variety of locations,including but not limited to newspaper and magazine articles, signs andbillboards, flyers, store locations and kiosks, consumer products,packages, clothing, stickers, websites, software displays, televisionbroadcasts, virtual worlds, and/or the like. The nature of the code andassociated method with which the code can be scanned will depend to someextent on where the code is found, but among the possible types of codesare standard barcodes (e.g., UPC, EAN, Code 128, etc.), 2D matrix codes(e.g., QR code, Semacode, Data Glyphs, mCodes, etc.), user-input codes(e.g., text messages), RFID tags, pure images (e.g., an image of a signto be analyzed by optical character recognition), website links,software inputs, and/or the like. These codes may be located on anymedium (e.g., on newspapers, magazines, books, video content, computerscreens, embedded in objects (e.g., RFID tags on clothes, etc.), and/orthe like). One embodiment employs 2D matrix codes, examples of which areprovided in FIG. Sa, due to their large data capacity, ease of scanning,and resilience to damage or error. These examples include QR codes 500,Mcodes 505, Semacodes 510, and/or the like.

In scanning a code, the code image may not always be recorded faithfullyand/or in an ideal and/or suitable condition for decoding and/ormatching to associated content. Consequently, the CTIS may be configuredto enhance and/or otherwise process a code image in order to betterrecognize the code. FIGS. 5 b-c show implementations of logic flow forprocessing and/or managing non-ideal code scans in embodiments of CTISoperation. In FIG. 5 b, a scanned code is received at the CTIS server(513) and a first attempt is made to decode a received code scan (515).In one implementation, a received code scan may take the form of abitmap image and/or a compressed bitmap image. If the decoding issuccessful (520), then the code is matched to associated content (525)that is ultimately destined to be served to a user. Otherwise, adetermination is made as to whether enhancement should be applied to thescanned code (530). If not, then an error message and/or suggestions onhow to improve the quality of the scanned code may be returned to theuser (535). The CTIS may decide not to apply enhancement, for example,if enhancement has already been applied unsuccessfully to the same imagebefore or if the quality of the image is so poor as to be clearly beyondimprovement. If enhancement is to be applied, then the CTIS determinesthe appropriate enhancement type (540) based, for example, on thequality and character of the scanned code image and subsequently appliesthe enhancement (545), after which a new attempt is made to decode thescanned code.

In some implementations, multiple enhancement processes may be appliedagainst a scanned code and the results compared in order to determinethe encoded content. Prior to enhancement, the image may be downsized ifnecessary for speed of processing in applying multiple enhancementagainst the image. Image quality may also be increased if necessary inorder to more successfully apply enhancements. For code images havingextraneous information and/or noise, an enhancement process may beapplied to remove all extraneous information, despeckle, and/or thelike. For code images having shades of gray and/or shadows obscuring theencoded content, an enhancement process may be applied to manipulate thecontrast and/or brightness of the image in order to create a pure blackand white image for cleaner decoding. For code images that are tiltedand/or not taken flat in a plane, an enhancement process may be appliedto tilt the plane of the code to create a flat plane to aid insuccessful decoding. For code images that are rotated or skewed, anenhancement process may be applied to de-rotate, deskew, and/orotherwise recreate proper rectangular pixel groupings that can bedecoded. For code images that are taken out of focus, an enhancementprocess may be applied to sharpen the image into recognizable pixelgroupings. Additionally, the CTIS may apply edge recognition processesto the code image to create a set of potential code images that can beprocessed and compared to records in a code database.

In some cases in which full decoding of a scanned code image isimpossible, a partial decoding may be accomplished and serving ofcontent achieved on that basis. A partial decoding may, for example,result in a probabilistic code match without ever successfully decodingthe complete code. FIG. 5 c shows an implementation of logic flow forpartial decoding in one embodiment of CTIS operation. A scanned codeimage is received (548), partially decoded (550), and the partiallydecoded content used to query a code database to find matching codes(555). A determination is made if any matches exist (560) and, if not,then the CTIS may return an error message to the user and/or makesuggestions about how to improve the image of the scanned code (565). Ifa match is found, however, then a determination is made as to whetherthere are multiple matches (570). If so, then the CTIS may considerancillary factors (575) in attempting to isolate a single code as themost likely match to the received code. Such ancillary factors mayinclude, but are not limited to: the incoming phone number, the carrier,the time of day, current code traffic, the source of the code, thecontext of the code, the user ID, the hardware ID, the user behavioralhistory, the user location, and/or the like. In considering ancillaryfactors, the CTIS is thus capable of predicting the true code based onknowledge of the user scanning the code, the context of the code,ambient factors, and/or the like. Once a unique code has beenidentified, this is designated as the matching code (580) and the CTISproceeds with determining the appropriate associated content to serve tothe user.

In an illustrative example of partial decoding, a given matrix code mayencode the string ABC123. In multiple processes, it may be determinedthat the code contains A_(—)1_(—)3 (where the blanks represent unknownvalues), _C1_, and AB_. Through these multiple processes, the CTISsystem now knows that the code contains ABC1_(—)3 and may check thisagainst codes in a code database to determine how many matches exist. Ifit finds two matching codes (e.g., ABC123 and ABC143), it may considerancillary factors. For example, ABC123 may correspond to anadvertisement for a new action movie while ABC143 corresponds to acoupon for women's cosmetics. If the user supplying the code isdetermined, based on a supplied user ID, to be a man with a history ofscanning movie-related codes, then the CTIS system may infer that ABC123is the matching code and serve the corresponding content. In oneimplementation, the CTIS server may further supply a confirmationrequest for partially matched codes, requesting the user to affirm ordeny that the supplied content is, in fact, the content that he or shewas seeking.

Scan Message Data Structure (115)

The Scan Message generated by the CTIS is, itself, a novel datastructure. In one embodiment that is illustrated in FIG. 6, it containsan identification field (605) comprising a unique user ID (605 a) and ahardware ID (605 b), both automatically supplied by the device used toscan and transmit the scanned code; a coordinate field (610) comprisingthe location geocode (610 a) (e.g., GPS coordinate, latitude andlongitude, city and state, etc.) and timestamp (610 b) of the scan; anda code field (615) supplying the specific content of the scanned code,which may include a subject code (615 a) for the code context, a sourcecode (615 b) indicating where the code was located, and a content code(615 c) indicating the specific information, if any, to be supplied inresponse to a scan of that code.

In one embodiment, the XML for the Scan Message takes the followingform:

<Scan_Message> <ID> <User ID> 012345 </User ID> <Hardware ID> Nokia 660</Hardware ID> </ID> <Coordinates> <Geocode> GPS 40 46.516 −7357.98</Geocode> <Timestamp> 08/21/2006 13:45:28 </Timestamp> </Coordinates><Code> Subject> entertainment; movies; comedy </Subject> <Source> NewYork Times </Source> <Content> Showtimes for latest popular comedy movie</Content> </Code> </Scan_Message>

Data Transmission (120, 125, 145, 150)

In one embodiment, sending and receiving the Scan Message and ReplyMessage will employ standard data transmission techniques to ensuresuccessful transmission and to preserve data integrity (e.g., TCP/IP,1xEV-DO, etc.). This is relevant for the Scan Message, which willcontain the coded information scanned by the user. Such techniques mayinclude but are not limited to the use of standard transmissionprotocols, “handshaking”, data compression, data encryption, and errorcorrection.

User Profile Structure (130)

The content of the user profile generated by the CTIS is itself a noveldata structure. In one embodiment illustrated in FIG. 7, the profile(700), which is uniquely specified by the user ID, will contain acategory of quasi-static user information (705) that is generally fixedover time and one of dynamic user information (730) that is updated witheach successive Scan Message that the user submits. The quasi-staticinfo (the “quasi” qualifier indicates that this information may beupdated, for example if a user changes their mobile device, however itdoes not change with each successive code scan) may include a hardwareID (710); “census” info (715) such as name, address, phone number,e-mail address, age, sex, race, marital status, number and age ofchildren, job title, annual income, etc.; subjects of interest specifiedby the user (720); and information regarding allowed methods to contactthe user (725). In one embodiment, this information could be supplied bythe user when registering for the CTIS service as, for example, on awebsite. The dynamic info in the profile may include a scan record(735), comprising the time (740), location (745), and scan code (750)(including subject (750 a), source (750 b) and content (750 c)); andstatistics related to the scan history (755). Such statistics mayinclude but are not limited to the most popular scan subjects, mostpopular scan sources, user space-time trajectories, etc. In oneembodiment, the profile contains a series of identifying codes distilledfrom the profile content (e.g., demographic category code based oncensus info, subject codes, source codes, etc.) that can be comparedwith similar codes in the Scan Message to determine the appropriate Adcontent to include in the Reply Message. In an alternative embodiment,the profile contains identifying keywords or “tags” based on the profilecontent that can be compared with similar tags in the Scan Message todetermine the appropriate content to include in the Reply Message. Inboth cases, the identifying labels for the user profiles may be input byCTIS administrators or automatically generated by an appropriatecomputer algorithm such as stripping header labels from ad descriptions(e.g., for example, stripping the header tags from an HTML ad).

In one embodiment, the XML for the User Profile may take the followingform:

<User> <Quasi-static info> <User ID>123-45-6789</User ID> <Hardware ID>Nokia 660 </Hardware ID> <Census info> John Smith; 123 Maple Dr.,Smalltown, CA 92676; (123)456-7890; jsmith@email.com; 55 years; male;white; married; 2 children; etc. </Census info> <Interests> camping;fishing; classic cars; movies; etc. </Interests> <Contact restrictions>Weekdays 8 AM - 7 PM only </Contact restrictions> </Quasi-static info><Dynamic info> <Scan record> <Scan #1> <Time> 08/21/2006 13:45:28</Time> <Geocode> GPS 40 46.516 −73.57.98 </Geocode> <Code> <Subject>entertainment; movies; comedy </Subject> <Source> New York Times</Source> <Content> Showtimes for latest popular comedy movie </Content></Code> </Scan_#1> <Scan_#2> etc ... </Scan_#2> etc ... </Scan record><Scan statistics> <Popular subjects> entertainment; cars; travel; etc.</Popular subjects> <Popular sources> New York Times; Car and Driver;CNN.com; etc. <Popular sources> <Trajectories> Data files listing timeand geocode coordinates, computed average trajectories, likelylocatons,etc. </Trajectories> etc ... </Scan statistics> </Dynamic info> <Code><Subject> entertainment; movies; comedy </Subject> <Source> New YorkTimes </Source> <Content> Showtimes for latest popular comedy movie</Content> </Code> </User>

In one embodiment, data accumulated in a plurality of user profiles maybe analyzed to extract information about codes that are scanned. Forexample, the frequency with which a particular code is scanned may beextracted from user profiles and parsed by geographic, temporal, and/ordemographic criteria to yield code profiling information. Thisinformation may be stored in a code and/or Ad profile. In an alternativeembodiment, the code/Ad profile may be constructed and/or updated by theCTIS immediately upon the receipt of a Scan Message rather than beingextracted from user profiles.

Information Base (135)

The Information Base contains the content that may be included in theReply Message sent to the user and may be stored on the CTIS centralserver or on third party servers accessed by the CTIS. In oneembodiment, each Ad is associated with searchable labels. The Ad contenttogether with its labels, collectively referred to here as an Ad, formsa novel data structure. In one embodiment illustrated in FIG. 8, the Ad(800) is comprised of the specific ad content (805) (e.g., text, images,video, etc.) and a set of identifiers (810) including subject tags(815), information characterizing the temporal character of the Ad basedon which the Ad may be triggered (820) (e.g., 6 to 10 AM for a breakfastAd), information characterizing the geographic specificity of the Adbased on which the Ad may be triggered (825), demographic specificity ofthe Ad (830) (e.g., an Ad for family vacations), and the hardwarerequirements of the Ad (835) (e.g., hardware IDs of devices capable ofdisplaying the content of a particular Ad). In one embodiment, the Adwould also contain information identifying the source in which the Adcode is to appear. In another embodiment, the Ad would also containcode/Ad profile data, describing the history and/or statistics of scansrelated to the Ad.

In one embodiment, the XML for an Ad may look like:

<Ad> <Ad ID>123</Ad ID> <Ad content> textual movie showtime listings (or images, audio, video, URLs, etc.) </Ad content> <Identifiers><Subject> entertainment; movies; comedy </Subject> <Temporal>08/21/2006; 12:00:00 to 14:00:00 </Temporal> <Geographic> Smalltown, CA92676 </Geographic> <Demographic> 17 years and older </Demographic><Hardware> any (text only) </Hardware> </Identifiers> </Ad>

User Profile Query (130)

The CTIS queries the user profile to determine which Ads to include fromthe Information Base in the Reply Message in order to tailor those Adsto the user's profile characteristics, interests, and trajectories. Inone embodiment, a scanned code will yield two components in the ReplyMessage content: i) static content that is the same for every user whoscans the code, and ii) dynamic content that depends on the context ofthe user and the user profile. The static content (i) is determined fromthe scan code, while the dynamic content (ii) is determined by acombination of the scan code and the user profile, requiring a dynamiccontent generation heuristic to combine their respective influences.While a variety of such heuristic are possible and contemplated as beingwithin the scope of this disclosure, and the specific heuristic employedin a given realization will likely depend on the precise application andintention, we discuss one embodiment of this heuristic here forillustrative purposes with reference to FIG. 9. In one embodiment, thescan code and user profile is labeled with keywords or “tags” thatidentify the subject content of each. In an alternative embodiment, thescan code, user profile, and Ads are labeled with identifying codes. Ineither case, the heuristic exhibited in FIG. 9 first filters all Ads inthe Information Base by the subject code or tag of the scanned code(900). The Ads from 900 are filtered by the hardware ID (905) to ensurethat the Ad content can be successfully acquired and displayed by theuser. The Ads from 905 are filtered into separate categories by scanlocation (910 a 1), user address (910 a 2), user specified subjectinterests (910 b 1), user scan subject history (910 b 2), scan time (910c), or user demographic category (910 d). Ads in each of these filteredcategories are compared to determine which occur most commonly across910 a, b, c, and d (915). The server determines if 915 has yielded asingle Ad (920), and if so, it incorporates the Ad's content into theReply Message (930). Otherwise, it chooses one Ad at random from theremaining Ads (925) for incorporation. It must be emphasized again thatthis is but a single, specific embodiment of the user profile queryheuristic intended for illustrative purposes. The heuristic is highlyflexible and can be finely tuned for the specific application at hand.Some other possible methods may include alternative ordering of filters,addition or removal of filters, weighted filtering, complex conditionaltrees, and/or the like.

As an exemplary implementation of this embodiment of the Ad filteringheuristic, we consider the situation discussed above with reference toFIG. 2. Here, the user scans a code from an article on finance andinvestment in the business section of a media publication. Keywordsassociated with this code may include Business, Finance, Investment,etc. Consequently, only those Ads possessing these identifying keywordsare passed at 800. In an alternative embodiment, the keywords may beranked in order or relevance and the Ads filtered accordingly. The Adsfrom 900 are filtered by Hardware ID; we presently assume that theuser's mobile device is equipped with advanced capabilities (text,image, audio, video, internet, etc.), so that all Ads are passed at 905.In an alternative embodiment, the Ad filter may preferentially choosethose Ads that take fullest advantage of the user device's displaycapabilities. Of the remaining Ads, there is one for a brokerage firmthat is tagged with a location code corresponding to the user's address(San Francisco, Calif.), the user's specified subject interests(investing, retirement), and a portion of the user's demographic profile(age 55 or older). The three tag matches (location, subject, anddemographic) distinguish this Ad from the others in the InformationBase, which, in this example, all have two or fewer tag matches; so thisunique Ad, a brokerage firm located in San Francisco, Calif. withretirement services, is chosen to be served to the user's mobile device.

In one embodiment, the user may respond to the Reply Message with arelevance rating. This rating may then be stored in the user profileand/or employed to refine the criteria for tailoring future ReplyMessages to that user.

In one embodiment, the Ads would not be filtered by hardware ID at 905.Rather, when a final Ad has been selected for inclusion in the ReplyMessage following filtration under the other relevant criteria, theserver will determine whether that Ad is properly formatted for thedevice specified by the hardware ID. If so, then the Ad will be includedin the Reply Message as is. Otherwise, it will be converted into therequired format appropriate to the user's mobile device. For example, ifthe selected Ad contains color Images but the server determines that theuser's hardware device is an early model BlackBerry that onlyaccommodates monochromatic text, the server will implement a peripheralapplication to strip the text content from the Ad and incorporate onlythat in the Reply Message.

Non-Triggered Ad Serving

Though Ads served by the CTIS are determined by codes scanned at sometime in the past, it is possible for the CTIS to serve Ads without anyimmediately contiguous, causal code scan. A general illustration of thiscapability was given above in FIG. 3, where each Ad provider hasspecific geographic locations of operation. These are assumed to bestores/restaurants for the present purposes of illustration in thisdisclosure, but they may have different character for differentembodiments and applications, including but not limited to kiosks, signsand billboards, offices, hospitals, real estate, shelters, emergencyservice providers, traffic monitors, individuals, websites, virtualworld locations, and/or the like. A chosen distance surrounding each Adprovider location defines a “provider zone”, where the metric by which“distance” is gauged may be generalized in the case ofcyberspace/virtual world locations. A provider zone breach occurs when auser scans a code within a provider zone. This may be regardless of thecontent of the scanned code, for in this example the goal is to recordthe user's space-time position. In an alternative embodiment, a providerzone breach can be registered even if a user does not scan a code withinthe provider zone, if the CTIS can infer a breach from two or more codescans outside the provider zone through interpolation. When such aprovider zone breach occurs, a special note may be incorporated into theuser profile, such as in the Scan statistics module (755), indicatingthe time and the particular Ad provider.

In an alternative implementation, the CTIS may be configured toautomatically query a user position without scanned codes. For example,a user's mobile device may be configured to periodically register it'sGPS location with the CTIS system. In another implementation, the CTISmay be able to continuously monitor the position of a client mobiledevice based on the cell site or tower to which the device iscommunicatively coupled. Cell site based user location may also beregistered when a user scans a code.

From an accumulated record of these breaches, data of the form of FIG.10 can be determined. FIG. 10 shows a histogram (1000) of provider zonebreaches in 20 minute intervals for a particular user over a chosen timescale, which we will take to be two months in this example. In oneembodiment, such histograms will correspond to breaches of specific Adprovider locations; while in an alternative embodiment, they willcorrespond to breaches of any of a plurality of locations correspondingto a specific Ad provider; while in still another embodiment, they willcorrespond to breaches of different locations of related but differentAd providers, chosen to target a specific collective user demographic.In this exemplary histogram, the significant provider zone breaches(those exceeding the threshold) are clustered around two times: oneapproximately centered at 9 AM (1005), and the other at 6 PM (1010).This may represent, for example, a user scanning codes as he passes thesame Ad provider location while riding a bus to and from work. In oneembodiment, a threshold breach level (1015), indicated in FIG. 10 by ahorizontal dotted line, is specified such that all breaches below thisthreshold number are ignored. This threshold level should be specifiedwith respect to the time scale of the histogram; in the present example,the threshold is 3 breaches per two month period. The average peak times(1020, 1025) of the breach clusters that exceed this threshold arecomputed (marked by X's in FIG. 9), and a time is chosen prior to thoseaverages (1030, 1035) to serve an appropriate Ad to the user. In oneembodiment, provider zone breaches could be sorted by scan subject, sothat a histogram of the form of FIG. 10 could be constructed for aspecific category of scans in order to further tailor the supplied Adcontent.

In another embodiment, the system may be generalized to analyzetrajectories in “cyberspace-time”. In this embodiment, a record oftrajectories is kept of the user's activity on the world wide web asbrowsed, for example, on the user's internet enabled mobile device. Ageneralized concept of “distance” may be incorporated, for examplereflecting an average number of links needed to get from one website toanother. Provider locations become websites in this embodiment, and azone breach may be registered when the user is a specified number oflinks away from the provider's website. Then, just as before, the CTIScan anticipate user cyberspace-time trajectories and supply Ads,coupons, pop-ups, etc. related to websites that the user is approaching.For example, the CTIS may track that a user visits web site A at 9:00 AMand web site B at 9:20 AM every day. The CTIS may then provide ads towebsite A at 8:50 AM and to website B at 9:10 that are targeted to thatuser. In an alternative embodiment, the CTIS may provide this targetinginformation to existing ad serving systems, which in turn may use thetargeting information for timely placement of ads. The aggregation ofsuch targeting information, in particular, may be useful to advertisersand website owners. For example, reports may be run on user profilessorted by location (e.g., web sites) and time of visit. This informationmay be supplied, along with user profile IDs, which may then be used bythe advertising servers and/or websites to pre-cache ads that arerelevant to the users' interest just prior to their anticipated visitsto the website. As such, the CTIS works in conjunction with certainwebsites to supply user-specific Ads on those sites. As a result, thecontent of the user profile within the CTIS may be used to select Adsthat the user browses using their mobile device. In an alternativeembodiment, web-based Ads may be specific to the trajectories of usersin geographic space-time, since that information is included in the userprofile. For example, if a user is known to be passing by a coffee shopat a specific location and time every day (e.g., a coffee shop on 123Main Street, N.Y., N.Y. at 9:00 AM), and is also know to visit aspecific website at that time (e.g., at 9:00 AM the user visits websitee reading the daily news on their walk to work), then the system mayprovide the user with Ads directly to their PDA or embedded in website e(because it was pre-loaded as already discussed) for the coffee shop. Assuch, the CTIS provides a mechanism to provide geographically relevantads to traditional websites. In yet another embodiment, the totalcontent of the websites browsed by a user on their mobile device may bemodified by the content of the user profile within the CTIS. Forexample, a news website may select articles for a user that are specificto the user profile, including their interests, demographics, currenttime and location, etc.

In another embodiment, the CTIS may analyze the user trajectories in“virtual worlds” or “synthetic realities” and serve ads accordingly. Anexample of a virtual world is a massively multiplayer online game, suchas The Sims Online, EverQuest, World of Warcraft, Second Life, and/orthe like. In such a virtual environment, a code scan may be comprised ofa particular user action or decision such as initiating or completing agame mission, clicking on an icon, saving a game, etc. In such virtualworlds, geographies and virtual locations may be used in employingtrajectories. The history of user activity within the virtual world maythen be incorporated into the user profile and used by the CTIS to serveads within the context of the virtual world or elsewhere. For example,in games like Second Life, virtual televisions, billboards, etc. may beused as advertising delivery mechanisms.

Selecting the proper Ad to serve to the user in the non-triggered Adserving embodiment of the CTIS may be accomplished using a variety ofheuristics that are best tailored to suit the specific use orapplication. Nevertheless, we present an example of a specificembodiment in FIG. IIa for illustrative purposes. In this embodiment, aweighting system may be employed to select among the Ads of a specificAd provider once it is established that an Ad from this provider is tobe served to the user based on the analysis of FIG. 10. This weightingsystem begins by assigning a score of 1 (1100) to all Ads in theInformation Base corresponding to the provider. This score is multipliedby a subject coefficient (1105) for every match between the Ad subjectand the user specified subject interest or scan subject history. Thatcoefficient is 2 in the present example, so N matches would yield aweighting factor of 2N. The Ad score may also be multiplied by a timecoefficient (1110) if the serving time (1030 or 1035) falls within atime range specified for a particular Ad. In the present example, thetime coefficient is 4, expressing the greater importance of this factorcompared to a single subject match. Finally, the Ad score may bemultiplied by a demographic coefficient (1115) for every match betweenthe Ad demographic category and that of the user. That coefficient is1.5 in the present example, reflecting the diminished importance of thisfactor compared to the time and subject considerations. M demographiccategory matches will yield a weighting factor of 1.5^(M). Once all ofthe Ad provider's Ads are scored in this fashion, those Ads with thehighest scores for that provider may be selected over the rest (1120).Similarly, the highest scoring Ads from other providers are selected andthe highest scoring Ads over all providers can be selected to serve fora particular time interval (1125). Finally, the proper time to serve theAd (e.g., 30 minutes prior to the expected average provider zone breachtime) is established (1130) and, if there is no further ambiguity(1135), the proper Ad is served at that time (1145). Any residualambiguity may be resolved by selecting randomly from the remaining Ads.

As a specific example of how this might work, we assume that thehistogram (1000) of FIG. 10 represents provider zone breaches for afast-food restaurant that a user passes on his way to and from work. AnAd in the restaurant's base of provided Ads matches the user's statedinterest in gourmet coffee, and this Ad is further labeled by a timeidentifier indicating that it is best served between 8 AM and 10 AM.Consequently, at 30 minutes before the user's average breach time of theprovider's zone, the server supplies the Ad to the user's mobile device,touting this restaurant's new line of gourmet coffee drinks.Alternatively, the user's profile may specify that he is married withtwo children. This matches the demographic category of an Ad in theprovider's base which is also labeled by a time identifier indicatingthat it is best served between 5 PM and 8 PM. As a result, 30 minutesbefore the user breaches the provider's zone on his way home from work,the server supplies the Ad to the user's mobile device, touting theirfamily-pack of hamburgers.

In an alternative embodiment, the CTIS may be configured to receive andimplement marketer rules for serving Ads. FIG. 11 b shows a schematicillustration of data structures related to establishment of a marketerrule for Ad serving in one embodiment of CTIS operation. A user profiledata sets (1147) may include a variety of data fields related to useractivities, interests, characteristics, and/or the like, such as but notlimited to: geographic visits (1149), as may be recorded by code scans;time (1151) associated with code scans; interest contacts (1153), suchas may be reflect the user's interests and may be based on the contextand/or associated content of scanned codes; gender, age, demographic,and/or other personal information (1155); and/or the like. Server datapulls (1157) may reference one or more data feeds to which the CTISserver has access in order to draw information that may be pertinent tomarketer rules and/or Ad serving procedures. A wide variety of differenttypes of feeds may be accessible, including but not limited to: globalnewsfeeds (1159), such as associated press wire services, weatherinformation, sports scores, political and social events, financialmarket data, and/or the like; category sector feeds (1161), such as morespecific and/or special interest news feeds; marketer specified feeds(1163); and/or the like. A marketer rule (1165) may be established byselecting one or more fields (1167) from the user profile data sets(1147) and/or the server data pulls (1157) and supplying associatedparameters (1165) and/or parameter values associated with those fields.In the illustrated implementation, the rule associates a PetroleumGazette field (1169) with a parameter specifying more than three oilarticles read per day (1175). In addition, the rule associates a gasstation visitation field (1171) with a parameter specifying more thanthree visits per week (1177). If both of these conditions are deemedtrue for a given CTIS user, then the CTIS may serve one or more Adsselected for and/or associated with the marketer rule. A priceper-impression (1179) may be charged for each time that the Ad is servedto a user under the circumstances specified by the rule. In oneimplementation, a marketer may propose a price per-impression when he orshe creates the rule, which is then submitted to the CTIS and/or a CTISadministrator for approval. In another implementation, the CTIS mayautomatically generate a price-per-impression based on the rule and/orthe marketer. For example, a fixed charge may be applied for eachadditional field and associated parameter added to the rule, as thisrefines the specificity with which the associated Ads will be served andincreases the likelihood of transactional consummation. Once a rule iscomplete, it may be entered for storage and subsequent use in a marketerrules database (1181). It should be understood that the functionalitydescribed for this embodiment of the CTIS may be integrated or employedwithin any of the other CTIS embodiments described herein.

In one embodiment, the XML for the above marketer rule may take a formsimilar to the following:

<Rule> <Rule ID>123</Rule ID> <Rule name> Oil Rule </Rule name> <Ruleowner> Ads R Us </Rule owner> <Condition1> <Field1> Petroleum Gazette</Field1> <Parameter1> 4 or more oil articles/day </Parameter1></Condition1> <Condition2> <Field2> Gas Station </Field2> <Parameter2> 4or more visits per week </Parameter2> </Condition2> <Ad_database> Hybridcar Ads </Ad_database> <Price> <Amount> $1.00 </Amount> <Contingency>Impression </Contingency> </Price> </Rule>

In one implementation, the elements of FIG. 11 b may form the basis of auser interface for marketer rule generation. A marketer and/or otherCTIS user may be presented with lists of user profile data sets (1147)and server data pulls (1157) that may be dragged and dropped to themarketer rule box (1165) to generate a marketer rule. When the parametervalues have been specified and the rule is complete, the user may clickOK to submit the rule and/or drag and drop the rule to a marketer rulesdatabase icon (1181).

FIG. 11 c shows an implementation of logic flow for generating a rulequeue in one embodiment of CTIS operation. A rule is instantiated(1182), and the CTIS server checks parameter quanta associated with therule (1183). A runtime quantum is discerned for the rule (1184) todetermine the timing for applying the rule. The rule is subsequentlyparsed to generate the appropriate query structure (1185), and the cronschedule for the rule is established based on the runtime quantum(1186). The rule may then be pushed to the cron schedule queue (1187),and a determination made as to whether there are any additional newrules to process (1188).

FIG. 11 d shows an implementation of logic flow for cron job queuemanagement in one embodiment of CTIS operation. The CTIS may monitor thecron job queue and, for each queued cron job associated with a rule thatis next in the queue (1189), the CTIS may determine whether or not it istime for that particular cronjob to run (1190). If not, then the CTISpasses to the next cronjob in the queue (1191). On the other hand, if itis time to run, then the appropriate databases specified in the rule arequeried, and the particular cronjob is dequeued (1192). If the resultsof the database query match the rule criteria so as to require servingan Ad impression to a user, then that match indication may be passed toAd selection modules in order to choose an Ad to supply to the user. Inone implementation, the marketer rule itself may uniquely determine anAd to serve. In another implementation, the marketer rule may determinea set or class of Ads to serve, from which a unique Ad may then berandomly selected. In yet another implementation, as Ad may be selectedfrom the marketer rule determined set or class of Ads based on a userprofile.

It must be emphasized again that this is but a single, specificembodiment of the non-triggered Ad serving procedure intended forillustrative purposes. The procedure is highly flexible and can befinely tuned for the specific application at hand. Some other possiblemethods may include different relative weighting factors, alternativeweighting considerations, categorical filtering, consideration of thenumber of provider zone breaches above the threshold level, graduatedconsideration of the distance from the provider location, modifiedprovider zone shapes, pattern recognition algorithms, artificialintelligence facilitation, and/or the like.

VARIOUS APPLICATIONS

The CTIS provides a targeted information serving system that may beapplied to a wide variety of marketing and information dispensationapplications. In one embodiment, the CTIS creates enhanced ads withcontent that cannot be included in a print ad. For example, a user whoscans a code related to an automobile ad is provided additional contentpertaining to the automobile such as detailed images, video, audio,reviews, and links to additional information. Based on the geocodeprovided in the Scan Message, the CTIS may provide a list of localdealerships and pricing. Based on the user profile, the CTIS may suggestother automobiles by the same manufacturer that are popular withcustomers that share the same income bracket, geographic address, numberof children, etc. as the user.

In another embodiment, the CTIS provides targeted coupons to consumers.By scanning a code in an article or advertisement of interest, a usermay be provided with a coupon code for a store or establishment near thelocation where the scan took place, thereby increasing the likelihoodthat the coupon would be used. Choosing the coupon based on the contentsof the user profile may further increase the likelihood of a consummatedtransaction. FIGS. 12 a and 12 b show two examples wherein the CTISsupplies coupons and/or discount info to a user. FIG. 12 a shows anadvertisement 1205 for hay fever medication that contains a can code.Upon scanning the code, the user's cell phone is supplied with a coupon1210 for 25% off the advertised medication, along with a nearby store atwhich to redeem the coupon. FIG. 12 b shows an article related to eventsand nightlife in New York City 1215 that contains a scan code. Uponscanning the code to obtain additional content, the user may also beprovided with a contextual advertisement for a local bar 1220, includingan announcement of happy hour discount prices based on the time of thescan. In an alternative embodiment, the coupon could be provided to theuser based on an anticipated provider zone breach rather than acontiguous, causal code scan.

In another embodiment, the CTIS allows for reduced use of printed spacein media publications. For example, an ordinary printed article oradvertisement may be supplanted by a 2D matrix code that supplies thecontent directly to the user's mobile display device. Furthermore, thesupplied content may be dressed with additional content that isspecifically chosen for the user based on his/her profile or currentlocation, thus increasing the value and utility of the content whilestill utilizing significantly reduced print space. This increasedcontent value, coupled with the reduction in print space, may translateto significantly increased advertising revenue for media publications.In another embodiment, scan codes may be placed in web-based ads so thatusers may scan those ads with their mobile device. In anotherembodiment, scan codes may be placed in television-based ads.

In another embodiment, the CTIS provides a means to supply urgent orbreaking information. For example, a breaking news story that arrivestoo late to be included as a printed article can still be incorporatedinto a publication via a 2D matrix code. Publications could even have apermanent code in each issue that users can scan in order to accesstimely breaking and/or supplemental news for which there was a lack ofspace or time to include in the printed publication.

In another embodiment, the CTIS provides a means of disseminatingtargeted information over a large scale. For example, during awidespread emergency, a single 2D matrix code could be broadcast ontelevision. When users scan the code, they are supplied with regionalinformation/instructions, shelter locations, maps, etc. Certain usersmay be provided even more specific instructions if, for example, theirprofile lists their occupation as some form of emergency personnel. Inan alternative embodiment, the CTIS can provide targeted information toany or all users expected to be in the vicinity of a particular area orevent based on their history of space-time trajectories. For example, ifa chemical spill occurs and users are projected to be in the vicinity ofit, a prior warning to avoid the area can be broadcast to the users'mobile devices. In an alternative embodiment, traffic alerts can bebroadcast to the mobile devices of users projected to be in the vicinityof a high-traffic area before they are stuck there. The CTIS may supplytargeted Ads, including coupons, for nearby businesses, restaurants,coffee shops, etc. to these users for them to solicit while they waitfor traffic to disperse. In general, just as the CTIS can provideinformation to users about where they should go (e.g., Ad providerlocations), it can also warn them to stay out of areas that they shouldnot go, all based on the projected user trajectories.

In another embodiment, the CTIS may serve Ads based on prevailingambient conditions or climate at users' space-time positions. Forexample, this may occur when the relevance score for contextual Ads islow. An illustration of the logic and data flow in this embodiment isprovided in FIG. 13, wherein the contextual Ads selected from theInformation Base on the basis of code scan and user profile aresupplanted in favor of Ads chosen on the basis of prevailing ambientconditions at 1340. Exemplary embodiments are provided in FIGS. 14 and15. In FIG. 14, an Ad for allergy medication is provided 1447 in lieu ofweak contextual ad options 1442 in response to a code scan from theweather section of a media publication 1407 in conjunction with ambientweather information, including pollen count, queried at the server 1412.In FIG. 15, an Ad for sunscreen is provided 1547 in lieu of weakcontextual Ad options 1542 in response to a code scan from the frontpage section of a media publication 1507 in conjunction with ambientweather information, including humidity and UV index, queried directlyby the user's mobile device 1512. In various embodiments, certainambient conditions such as UV levels, humidity, download/upload speeds,and/or the like may be detected by the user's mobile device itself,while in other embodiments, ambient conditions are separately suppliedto a database used in conjunction with the CTIS.

In another embodiment, the CTIS may serve contextual Ads with contentenhanced by reference to prevailing ambient conditions. An illustrationof the logic and data flow in this embodiment is provided in FIG. 16wherein the contextual Ads selected from the information base at 1635are further refined by the ambient condition information at 1640.Exemplary embodiments are provided in FIGS. 17-20. In FIG. 17, a code isscanned from the Business section of a media publication 1707 and theCTIS selects luxury car Ads for display 1739 based on the scanned code,user location, and user profile 1732, and these Ads are further refinedbased on the ambient weather conditions provided to the server at 1712.In this case, warm and sunny weather provides further context to causethe CTIS to serve an Ad for a luxury convertible 1747. In FIG. 18, acode is scanned from the Travel section of a media publication 1807 andthe CTIS selects travel Ads for display 1839 based on the scanned codeand user profile 1832, which includes recent scan code transactionspertaining to travel and Miami sports scores. The CTIS consequentlyqueries the prevailing ambient weather conditions, comprised of cold andrainy weather, and supplies an Ad for Miami travel opportunities. InFIG. 19, a code is scanned from the Weekend section of a mediapublication 1907 and the CTIS selects a contextual Ad for eating out1939 from the Information base 1935 to serve based on the scanned codeand the prevailing ambient weather conditions, which are hot and sunny1912. This Ad is further refined by the user profile contents 1932indicating a college student interested in comics and entertainment, andan Ad for an ice cream shop is finally supplied 1947. In FIG. 20, a codeis scanned from a baseball team schedule within a media publication2007. Based on the prevailing ambient weather conditions, includingscattered showers 2012, the scanned code, and the recent activity in theuser profile 2032, an Ad is supplied for ponchos and golf umbrellas2042.

In various embodiments, the CTIS may serve Ads based on a wide varietyof different ambient and/or situational conditions that may be detectedby the client mobile device, provided by internal or third partydatabases or information feeds, and/or the like. Some non-limitingexamples of potential ambient and/or situational conditions that may beconsidered and/or employed in selecting information to serve aretemperature, weather, light levels, UV levels, pollen count, humidity,air quality, prices of commodities and/or consumer goods, stock and/orfinancial index prices, global and/or local news events, internetactivities, sports scores, entertainment news, security warnings, and/orthe like. Consideration of such factors, by themselves or in conjunctionwith knowledge of a user such as may be gleaned from a user profile, mayform the basis of information serving rules that have great specificityof targeting. For example, a marketer rule within the CTIS may specifythat an Ad for participating bars that includes a coupon for aparticular brand of beer be served to all male users between the ages of21 and 40 with a history of scanning baseball-related codes within threehours of any time that the local baseball team wins a game. In anotherexample, a marketer rule within the CTIS may specify that an Ad forhybrid vehicles be served to all mothers with young children who have ahistory of scanning codes in Time magazine whenever the local price ofgasoline is greater than $2.50/gallon and they scan a code in an issueof Time that contains articles on both global warming and the Iraq War.Such hypertargeted information serving, enabled by the CTIS, may provevery valuable to marketers and, in fact, to a wide variety ofinformation dissemination applications. Advertisers may be able topurchase Ad time and/or impressions that are conditional on events,people, time, place, ambient conditions, and/or combinations thereof,and/or the like. Consequently, a premium may be charged to advertisersfor each Ad served, and that premium may increase with the number offactors considered in serving the Ad (i.e., the degree to which the Adserving is targeted). In another implementation, a different price maybe charged per impression depending on the characteristics of theindividual to which the Ad is served. For example, the hybrid car Addescribed above may cost an advertiser $0.75 for an impression to a momwith adult children but $1.00 for an impression to a mom with youngchildren. Such graded pricing schemes may be specified within amarketing rule data structure.

In another embodiment, Ads may be served based on internet “climate”,such as serving Ads for virus detection software during an outbreak orserving Ads for high-speed broadband internet service on days of highinternet traffic. Conditions for specific websites (i.e.,cyberspace-time positions) could even be taken into account. Forexample, an Ad for high-speed broadband internet service could besupplied to visitors of a website experiencing particularly hightraffic.

In another embodiment, the CTIS may interface with various customerinformation databases, customer relationship management databases,and/or any other third party data sources in order to extractinformation that may be used to further target and/or refine Adselection for a given user. In one implementation, a marketer may supplythe CTIS with access to a given marketer-specific database and/or datafeed, in order to allow the CTIS to access the information thereinduring Ad selection processes. It should be understood that thefunctionality described for this embodiment of the CTIS may beintegrated or employed within any of the other CTIS embodimentsdescribed herein.

In another embodiment, the CTIS can interface with and optimize Ads forvarious User Agent devices, which may include PCs, laptops, PDAs, DVRs,cable boxes, internet-coupled media devices, and generally withprogrammable electronic devices possessing external data transfercapabilities and/or the like. FIG. 21 provides an illustration of thelogic and data flow in one embodiment. At 2115, the Scan Message contentfurther incorporates an optional Send to Device info, which specifiesthe destination User Agent device for a particular Ad. Then, at 2150,the Ad content selected by the CTIS is configured and/or optimized forthe User Agent device. Exemplary embodiments are provided in FIGS. 22and 23. In FIG. 22, a code from a sports publication is scanned by acell phone 2207, and a set-top-box/cable box/DVR User Agent device isspecified in the optional Send to Device information of the Scan Message2217. Consequently, in addition to contextual Ads supplied to the user'scell phone containing article/video links 2237 and season ticket offers2239, additional content is configured and sent to the User Agentdevice, such as authorization to descramble a pay-per-view sportingevent. In one embodiment, the user's mobile device would provide asignal to the User Agent device to cause it to send a Request for Infoto the CTIS. In another embodiment, the CTIS could send an appropriatelyconfigured signal to the User Agent device without the need for aRequest for Info signal. In FIG. 23, a code is scanned from the Techsection of a media publication using a cell phone 2307, and the optionalSend to Device info in the Scan Message specifies to send to a PC laptop2317. In accordance with the ambient conditions embodiment discussedpreviously, the CTIS gauges the ambient conditions associated with thedevice and determines that there has been a recent outbreak of aparticular computer virus over the internet 2322. Consequently, the CTISsupplies an offer for Virus Scan software subscriptions 2344, and maysend Virus Scan software directly to the specified PC laptop based onuser response.

In another embodiment, the CTIS provides a mechanism of institutingplans for large-scale coordination of personnel using a single codedbroadcast. High-level officials could determine which of a number ofcoordination plans to institute, each being associated with a unique 2Dmatrix code. When a plan is decided upon, the code is broadcast (such asover television or the internet) and lower-level employees scan the codeto obtain instructions, diagrams, maps, etc. that are tailored to theemployees' specific profile contents (i.e., job, skills, location,etc.). There may also be authorization information included in theemployee profiles that determines whether they are allowed to decode thebroadcast. As each employee progresses in their role within the plan,additional codes could be provided to the employee to scan, both toupdate their tasks and to track their progress, space-time trajectories,etc.

In another embodiment, the CTIS provides a means of employee tracking.For example, tasks are supplied to employees in the form of 2D matrixcodes. When a code is scanned by a given employee, the scan is recordedin the employee's profile and the employee is provided with instructionsspecific to that task and their position within the organization. Whenthe task is completed, the employee is provided with a completion codethat, when scanned, records the employee's successful completion of thattask and provides instructions for the next task and/or rewardinformation. In this manner, a record of employee accomplishments iskept as well as information regarding the time taken by the employee toaccomplish various tasks. A statistical record of an employee'sexperience by subject matter may also be generated and included inhis/her profile using the CTIS.

In another embodiment, the CTIS can connect users based on userprofiles. For example, in analogy to the “provider zone” breachesdiscussed above, the CTIS may also track the intersection of userspace-time trajectories. In particular, if one user is within aspecified distance of the projected space-time trajectory of anotheruser with whom the first user is associated, a message may be sent toone or both users notifying them of their potential proximity. Furtherconsideration of user profiles may also be utilized in suchnotifications.

In another embodiment, the CTIS can be used to provide informationregarding consumer products that cannot be included on the productpackaging. By scanning a code printed on a consumer product CTISpackage, the user could be provided with nutritional information,ingredients, website links, coupons, etc. Additional advertisementscould also be served based on the nature of the product scanned and theuser profile. For example, a user who scans a container of mustard andhas “grilling” listed among his/her interests may be served anadvertisement and/or coupon for hot dogs in addition to the mustardinformation.

In another embodiment, the CTIS provides an efficient mechanism ofserving real estate listings. For example, when a user scans a coderelated to real estate listings, the CTIS supplies him/her withadvertisements and/or listings that are close to their geographiclocation and appropriate to their demographic profile (i.e., income,marital status, number of children, etc.). In addition, the CTIS mayprovide additional listings to the user based on projected breaches ofzones corresponding to available homes or apartments that suit theuser's profile.

In another embodiment, the CTIS expedites software downloads to a user'smobile device. For example, by scanning a 2D matrix code in an ad for acell phone ringtone version of a popular song, the user canautomatically download the ringtone to the cell phone with which theyscan the code. The transaction is recorded in the user profile and mayresult in the display of an advertisement related to the latest album bythe artist who recorded the ringtone song, or an album by a relatedartist, at some future time.

Code Triggered Information Server Controller

FIG. 24 of the present disclosure illustrates inventive aspects of acode triggered information server controller 2401 in a block diagram. Inthis embodiment, the code triggered information server controller 2401may serve to aggregate, process, store, search, serve, identify,instruct, generate, match, and/or update Scan Messages, Reply Messages,Ads, user profiles, and/or other related data.

Typically, users, which may be people and/or other systems, engageinformation technology systems (e.g., commonly computers) to facilitateinformation processing. In turn, computers employ processors to processinformation; such processors are often referred to as central processingunits (CPU). A common form of processor is referred to as amicroprocessor. CPUs use communicative signals to enable variousoperations. Such communicative signals may be stored and/or transmittedin batches as program and/or data components facilitate desiredoperations. These stored instruction code signals may engage the CPUcircuit components to perform desired operations. A common type ofprogram is a computer operating system, which, commonly, is executed byCPU on a computer; the operating system enables and facilitates users toaccess and operate computer information technology and resources. Commonresources employed in information technology systems include: input andoutput mechanisms through which data may pass into and out of acomputer; memory storage into which data may be saved; and processors bywhich information may be processed. Often information technology systemsare used to collect data for later retrieval, analysis, andmanipulation, commonly, which is facilitated through a database program.Information technology systems provide interfaces that allow users toaccess and operate various system components.

In one embodiment, the code triggered information server controller 2401may be connected to and/or communicate with entities such as, but notlimited to: one or more users from user input devices 2411; peripheraldevices 2412; a cryptographic processor device 2428; and/or acommunications network 2413.

Networks are commonly thought to comprise the interconnection andinteroperation of clients, servers, and intermediary nodes in a graphtopology. It should be noted that the term “server” as used throughoutthis disclosure refers generally to a computer, other device, program,or combination thereof that processes and responds to the requests ofremote users across a communications network. Servers serve theirinformation to requesting “clients.” The term “client” as used hereinrefers generally to a computer, other device, program, or combinationthereof that is capable of processing and making requests and obtainingand processing any responses from servers across a communicationsnetwork. A computer, other device, program, or combination thereof thatfacilitates, processes information and requests, and/or furthers thepassage of information from a source user to a destination user iscommonly referred to as a “node.” Networks are generally thought tofacilitate the transfer of information from source points todestinations. A node specifically tasked with furthering the passage ofinformation from a source to a destination is commonly called a“router.” There are many forms of networks such as Local Area Networks(LANs), Pico networks, Wide Area Networks (WANs), Wireless Networks(WLANs), etc. For example, the Internet is generally accepted as beingan interconnection of a multitude of networks whereby remote clients andservers may access and interoperate with one another.

The code triggered information server controller 2401 may be based oncommon computer systems that may comprise, but are not limited to,components such as: a computer systemization 2402 connected to memory2429.

Computer Systemization

A computer systemization 2402 may comprise a clock 2430, centralprocessing unit (CPU) 2403, a read only memory (ROM) 2406, a randomaccess memory (RAM) 2405, and/or an interface bus 2407, and mostfrequently, although not necessarily, are all interconnected and/orcommunicating through a system bus 2404. Optionally, the computersystemization may be connected to an internal power source 2486.Optionally, a cryptographic processor 2426 may be connected to thesystem bus. The system clock typically has a crystal oscillator andprovides a base signal. The clock is typically coupled to the system busand various clock multipliers that will increase or decrease the baseoperating frequency for other components interconnected in the computersystemization. The clock and various components in a computersystemization drive signals embodying information throughout the system.Such transmission and reception of signals embodying informationthroughout a computer systemization may be commonly referred to ascommunications. These communicative signals may further be transmitted,received, and the cause of return and/or reply signal communicationsbeyond the instant computer systemization to: communications networks,input devices, other computer systemizations, peripheral devices, and/orthe like. Of course, any of the above components may be connecteddirectly to one another, connected to the CPU, and/or organized innumerous variations employed as exemplified by various computer systems.

The CPU comprises at least one high-speed data processor adequate toexecute program components for executing user and/or system-generatedrequests. The CPU may be a microprocessor such as AMD's Athlon, Duronand/or Opteron; IBM and/or Motorola's PowerPC; IBM's and Sony's Cellprocessor; Intel's Celeron, Itanium, Pentium, Xeon, and/or XScale;and/or the like processor(s). The CPU interacts with memory throughsignal passing through conductive conduits to execute stored signalprogram code according to conventional data processing techniques. Suchsignal passing facilitates communication within the code triggeredinformation server controller and beyond through various interfaces.Should processing requirements dictate a greater amount speed, parallel,mainframe and/or super-computer architectures may similarly be employed.Alternatively, should deployment requirements dictate greaterportability, smaller Personal Digital Assistants (PDAs) may be employed.

Power Source

The power source 2486 may be of any standard form for powering smallelectronic circuit board devices such as the following power cells:alkaline, lithium hydride, lithium ion, lithium polymer, nickel cadmium,solar cells, and/or the like. Other types of AC or DC power sources maybe used as well. In the case of solar cells, in one embodiment, the caseprovides an aperture through which the solar cell may capture photonicenergy. The power cell 2486 is connected to at least one of theinterconnected subsequent components of the code triggered informationserver thereby providing an electric current to all subsequentcomponents. In one example, the power source 2486 is connected to thesystem bus component 2404. In an alternative embodiment, an outsidepower source 2486 is provided through a connection across the I/O 2408interface. For example, a USB and/or IEEE 1394 connection carries bothdata and power across the connection and is therefore a suitable sourceof power.

Interface Adapters

Interface bus(ses) 2407 may accept, connect, and/or communicate to anumber of interface adapters, conventionally although not necessarily inthe form of adapter cards, such as but not limited to: input outputinterfaces (I/O) 2408, storage interfaces 2409, network interfaces 2410,and/or the like. Optionally, cryptographic processor interfaces 2427similarly may be connected to the interface bus. The interface busprovides for the communications of interface adapters with one anotheras well as with other components of the computer systemization.Interface adapters are adapted for a compatible interface bus. Interfaceadapters conventionally connect to the interface bus via a slotarchitecture. Conventional slot architectures may be employed, such as,but not limited to: Accelerated Graphics Port (AGP), Card Bus,(Extended) Industry Standard Architecture ((E)ISA), Micro ChannelArchitecture (MCA), NuBus, Peripheral Component Interconnect (Extended)(PCI(X)), PCI Express, Personal Computer Memory Card InternationalAssociation (PCMCIA), and/or the like.

Storage interfaces 2409 may accept, communicate, and/or connect to anumber of storage devices such as, but not limited to: storage devices2414, removable disc devices, and/or the like. Storage interfaces mayemploy connection protocols such as, but not limited to: (Ultra)(Serial) Advanced Technology Attachment (Packet Interface) ((Ultra)(Serial) ATA(PI)), (Enhanced) Integrated Drive Electronics ((E)IDE),Institute of Electrical and Electronics Engineers (IEEE) 1394, fiberchannel, Small Computer Systems Interface (SCSI), Universal Serial Bus(USB), and/or the like.

Network interfaces 2410 may accept, communicate, and/or connect to acommunications network 2413. Through a communications network 2413, thecode triggered information server controller is accessible throughremote clients 2433 b (e.g.” computers with web browsers) by users 2433a. Network interfaces may employ connection protocols such as, but notlimited to: direct connect, Ethernet (thick, thin, twisted pair10/100/1000 Base T, and/or the like), Token Ring, wireless connectionsuch as IEEE 802.11a-x, and/or the like. A communications network may beanyone and/or the combination of the following: a directinterconnection; the Internet; a Local Area Network (LAN); aMetropolitan Area Network (MAN); an Operating Missions as Nodes on theInternet (OMNI); a secured custom connection; a Wide Area Network (WAN);a wireless network (e.g.” employing protocols such as, but not limitedto a Wireless Application Protocol (WAP), I-mode, and/or the like);and/or the like. A network interface may be regarded as a specializedform of an input output interface. Further, multiple network interfaces2410 may be used to engage with various communications network types2413. For example, multiple network interfaces may be employed to allowfor the communication over broadcast, multicast, and/or unicastnetworks.

Input Output interfaces (I/O) 2408 may accept, communicate, and/orconnect to user input devices 2411, peripheral devices 2412,cryptographic processor devices 2428, and/or the like. I/O may employconnection protocols such as, but not limited to: Apple Desktop Bus(ADB); Apple Desktop Connector (ADC); audio: analog, digital, monaural,RCA, stereo, and/or the like; IEEE 1394a-b; infrared; joystick;keyboard; midi; optical; PC AT; PS/2; parallel; radio; serial; USB;video interface: BNC, coaxial, composite, digital, Digital VisualInterface (DVI), RCA, RF antennae, S-Video, VGA, and/or the like;wireless; and/or the like. A common output device is a television set,which accepts signals from a video interface. Also, a video display,which typically comprises a Cathode Ray Tube (CRT) or Liquid CrystalDisplay (LCD) based monitor with an interface (e.g.” DVI circuitry andcable) that accepts signals from a video interface, may be used. Thevideo interface composites information generated by a computersystemization and generates video signals based on the compositedinformation in a video memory frame. Typically, the video interfaceprovides the composited video information through a video connectioninterface that accepts a video display interface (e.g.” an RCA compositevideo connector accepting an RCA composite video cable; a DVI connectoraccepting a DVI display cable, etc.).

User input devices 2411 may be card readers, dongles, finger printreaders, gloves, graphics tablets, joysticks, keyboards, mouse (mice),remote controls, retina readers, trackballs, trackpads, and/or the like.

Peripheral devices 2412 may be connected and/or communicate to I/Oand/or other facilities of the like such as network interfaces, storageinterfaces, and/or the like. Peripheral devices may be audio devices,cameras, dongles (e.g.” for copy protection, ensuring securetransactions with a digital signature, and/or the like), externalprocessors (for added functionality), goggles, microphones, monitors,network interfaces, printers, scanners, storage devices, video devices,video sources, visors, and/or the like.

It should be noted that although user input devices and peripheraldevices may be employed, the code triggered information servercontroller may be embodied as an embedded, dedicated, and/ormonitor-less (i.e.” headless) device, wherein access would be providedover a network interface connection.

Cryptographic units such as, but not limited to, microcontrollers,processors 2426, interfaces 2427, and/or devices 2428 may be attached,and/or communicate with the code triggered information servercontroller. A MC68HC16 microcontroller, commonly manufactured byMotorola Inc., may be used for and/or within cryptographic units.Equivalent microcontrollers and/or processors may also be used. TheMC68HC16 microcontroller utilizes a 16-bit multiply-and-accumulateinstruction in the 16 MHz configuration and requires less than onesecond to perform a 512-bit RSA private key operation. Cryptographicunits support the authentication of communications from interactingagents, as well as allowing for anonymous transactions. Cryptographicunits may also be configured as part of CPU. Other commerciallyavailable specialized cryptographic processors include VLSI Technology's33 MHz 6868 or Semaphore Communications' 40 MHz Roadrunner 184.

Memory

Generally, any mechanization and/or embodiment allowing a processor toaffect the storage and/or retrieval of information is regarded as memory2429. However, memory is a fungible technology and resource, thus, anynumber of memory embodiments may be employed in lieu of or in concertwith one another. It is to be understood that the code triggeredinformation server controller and/or a computer systemization may employvarious forms of memory 2429. For example, a computer systemization maybe configured wherein the functionality of on-chip CPU memory (e.g.”registers), RAM, ROM, and any other storage devices are provided by apaper punch tape or paper punch card mechanism; of course such anembodiment would result in an extremely slow rate of operation. In atypical configuration, memory 2429 will include ROM 2406, RAM 2405, anda storage device 2414. A storage device 2414 may be any conventionalcomputer system storage. Storage devices may include a drum; a (fixedand/or removable) magnetic disk drive; a magneto-optical drive; anoptical drive (i.e.” CD ROM/RAM/Recordable (R), ReWritable (RW), DVDRIRW, etc.); an array of devices (e.g.” Redundant Array of IndependentDisks (RAID)); and/or other devices of the like. Thus, a computersystemization generally requires and makes use of memory.

Component Collection

The memory 2429 may contain a collection of program and/or databasecomponents and/or data such as, but not limited to: operating systemcomponent(s) 2415 (operating system); information server component(s)2416 (information server); user interface component(s) 2417 (userinterface); Web browser component(s) 2418 (Web browser); database(s)2419; mail server component(s) 2421; mail client component(s) 2422;cryptographic server component(s) 2420 (cryptographic server); the codetriggered information server component(s) 2435; and/or the like (i.e.”collectively a component collection). These components may be stored andaccessed from the storage devices and/or from storage devices accessiblethrough an interface bus. Although non-conventional program componentssuch as those in the component collection, typically, are stored in alocal storage device 2414, they may also be loaded and/or stored inmemory such as: peripheral devices, RAM, remote storage facilitiesthrough a communications network, ROM, various forms of memory, and/orthe like.

Operating System

The operating system component 2415 is an executable program componentfacilitating the operation of the code triggered information servercontroller. Typically, the operating system facilitates access of I/O,network interfaces, peripheral devices, storage devices, and/or thelike. The operating system may be a highly fault tolerant, scalable, andsecure system such as Apple Macintosh as x (Server), AT&T Plan 9, Be as,Linux, Unix, and/or the like operating systems. However, more limitedand/or less secure operating systems also may be employed such as AppleMacintosh as, Microsoft DOS, Microsoft Windows2000/2003/3.1/95/98/CE/Millenium/NTNista/XP (Server), Palm as, and/orthe like. An operating system may communicate to and/or with othercomponents in a component collection, including itself, and/or the like.Most frequently, the operating system communicates with other programcomponents, user interfaces, and/or the like. For example, the operatingsystem may contain, communicate, generate, obtain, and/or provideprogram component, system, user, and/or data communications, requests,and/or responses. The operating system, once executed by the CPU, mayenable the interaction with communications networks, data, I/O,peripheral devices, program components, memory, user input devices,and/or the like. The operating system may provide communicationsprotocols that allow the code triggered information server controller tocommunicate with other entities through a communications network 2413.Various communication protocols may be used by the code triggeredinformation server system controller as a subcarrier transport mechanismfor interaction, such as, but not limited to: multicast, TCP/IP, UDP,unicast, and/or the like

Information Server

An information server component 2416 is a stored program component thatis executed by a cpu. The information server may be a conventionalInternet information server such as, but not limited to Apache SoftwareFoundation's Apache, Microsoft's Internet Information Server, and/orthe. The information server may allow for the execution of programcomponents through facilities such as Active Server Page (ASP), ActiveX,(ANSI) (Objective-) C (++), C#, Common Gateway Interface (CGI) scripts,Java, JavaScript, Practical Extraction Report Language (PERL), Python,WebObjects, and/or the like. The information server may support securecommunications protocols such as, but not limited to, File TransferProtocol (FTP); HyperText Transfer Protocol (HTTP); Secure HypertextTransfer Protocol (HTTPS), Secure Socket Layer (SSL), and/or the like.The information server provides results in the form of Web pages to Webbrowsers, and allows for the manipulated generation of the Web pagesthrough interaction with other program components. After a Domain NameSystem (DNS) resolution portion of an HTTP request is resolved to aparticular information server, the information server resolves requestsfor information at specified locations on the code triggered informationserver controller based on the remainder of the HTTP request. Forexample, a request such as http://123.124.125.126/myInformation.htmlmight have the IP portion of the request “123.124.125.126” resolved by aDNS server to an information server at that IP address; that informationserver might in turn further parse the http request for the“/myInformation.html” portion of the request and resolve it to alocation in memory containing the information “myInformation.html.”Additionally, other information serving protocols may be employed acrossvarious ports, e.g.” FTP communications across port 21, and/or the like.An information server may communicate to and/or with other components ina component collection, including itself, and/or facilities of the like.Most frequently, the information server communicates with the codetriggered information server database 2419, operating systems, otherprogram components, user interfaces, Web browsers, and/or the like.

Access to the code triggered information server database may be achievedthrough a number of database bridge mechanisms such as through scriptinglanguages as enumerated below (e.g.” CGI) and through inter-applicationcommunication channels as enumerated below (e.g.” CORBA, WebObjects,etc.). Any data requests through a Web browser are parsed through thebridge mechanism into appropriate grammars as required by the codetriggered information server. In one embodiment, the information serverwould provide a Web form accessible by a Web browser. Entries made intosupplied fields in the Web form are tagged as having been entered intothe particular fields, and parsed as such. The entered terms are thenpassed along with the field tags, which act to instruct the parser togenerate queries directed to appropriate tables and/or fields. In oneembodiment, the parser may generate queries in standard SQL byinstantiating a search string with the proper join/select commands basedon the tagged text entries, wherein the resulting command is providedover the bridge mechanism to the code triggered information server as aquery. Upon generating query results from the query, the results arepassed over the bridge mechanism, and may be parsed for formatting andgeneration of a new results Web page by the bridge mechanism. Such a newresults Web page is then provided to the information server, which maysupply it to the requesting Web browser.

Also, an information server may contain, communicate, generate, obtain,and/or provide program component, system, user, and/or datacommunications, requests, and/or responses.

User Interface

The function of computer interfaces in some respects is similar toautomobile operation interfaces. Automobile operation interface elementssuch as steering wheels, gearshifts, and speedometers facilitate theaccess, operation, and display of automobile resources, functionality,and status. Computer interaction interface elements such as check boxes,cursors, menus, scrollers, and windows (collectively and commonlyreferred to as widgets) similarly facilitate the access, operation, anddisplay of data and computer hardware and operating system resources,functionality, and status. Operation interfaces are commonly called userinterfaces. Graphical user interfaces (GUIs) such as the Apple MacintoshOperating System's Aqua, Microsoft's Windows XP, or Unix's X-Windowsprovide a baseline and means of accessing and displaying informationgraphically to users.

A user interface component 2417 is a stored program component that isexecuted by a CPU. The user interface may be a conventional graphic userinterface as provided by, with, and/or atop operating systems and/oroperating environments such as Apple Macintosh OS, e.g.” Aqua, GNUSTEP,Microsoft Windows (NT/XP), Unix X Windows (KDE, Gnome, and/or the like),mythTV, and/or the like. The user interface may allow for the display,execution, interaction, manipulation, and/or operation of programcomponents and/or system facilities through textual and/or graphicalfacilities. The user interface provides a facility through which usersmay affect, interact, and/or operate a computer system. A user interfacemay communicate to and/or with other components in a componentcollection, including itself, and/or facilities of the like. Mostfrequently, the user interface communicates with operating systems,other program components, and/or the like. The user interface maycontain, communicate, generate, obtain, and/or provide programcomponent, system, user, and/or data communications, requests, and/orresponses.

Web Browser

A Web browser component 2418 is a stored program component that isexecuted by a CPU. The Web browser may be a conventional hypertextviewing application such as Microsoft Internet Explorer or NetscapeNavigator. Secure Web browsing may be supplied with 128 bit (or greater)encryption by way of HTTPS, SSL, and/or the like. Some Web browsersallow for the execution of program components through facilities such asJava, JavaScript, ActiveX, and/or the like. Web browsers and likeinformation access tools may be integrated into PDAs, cellulartelephones, and/or other mobile devices. A Web browser may communicateto and/or with other components in a component collection, includingitself, and/or facilities of the like. Most frequently, the Web browsercommunicates with information servers, operating systems, integratedprogram components (e.g.” plug-ins), and/or the like; e.g.” it maycontain, communicate, generate, obtain, and/or provide programcomponent, system, user, and/or data communications, requests, and/orresponses. Of course, in place of a Web browser and information server,a combined application may be developed to perform similar functions ofboth. The combined application would similarly affect the obtaining andthe provision of information to users, user agents, and/or the like fromthe code triggered information server enabled nodes. The combinedapplication may be nugatory on systems employing standard Web browsers.

Mail Server

A mail server component 2421 is a stored program component that isexecuted by a CPU 2403. The mail server may be a conventional Internetmail server such as, but not limited to sendmail, Microsoft Exchange,and/or the like. The mail server may allow for the execution of programcomponents through facilities such as ASP, ActiveX, (ANSI) (Objective-)C (++), CGI scripts, Java, JavaScript, PERL, pipes, Python, WebObjects,and/or the like. The mail server may support communications protocolssuch as, but not limited to: Internet message access protocol (IMAP),Microsoft Exchange, post office protocol (POP3), simple mail transferprotocol (SMTP), and/or the like. The mail server can route, forward,and process incoming and outgoing mail messages that have been sent,relayed and/or otherwise traversing through and/or to the code triggeredinformation server.

Access to the code triggered information server mail may be achievedthrough a number of APIs offered by the individual Web server componentsand/or the operating system.

Also, a mail server may contain, communicate, generate, obtain, and/orprovide program component, system, user, and/or data communications,requests, information, and/or responses.

Mail Client

A mail client component 2422 is a stored program component that isexecuted by a CPU 2403. The mail client may be a conventional mailviewing application such as Apple Mail, Microsoft Entourage, MicrosoftOutlook, Microsoft Outlook Express, Mozilla Thunderbird, and/or thelike. Mail clients may support a number of transfer protocols, such as:IMAP, Microsoft Exchange, POP3, SMTP, and/or the like. A mail client maycommunicate to and/or with other components in a component collection,including itself, and/or facilities of the like. Most frequently, themail client communicates with mail servers, operating systems, othermail clients, and/or the like; e.g.” it may contain, communicate,generate, obtain, and/or provide program component, system, user, and/ordata communications, requests, information, and/or responses. Generally,the mail client provides a facility to compose and transmit electronicmail messages.

Cryptographic Server

A cryptographic server component 2420 is a stored program component thatis executed by a CPU 2403, cryptographic processor 2426, cryptographicprocessor interface 2427, cryptographic processor device 2428, and/orthe like. Cryptographic processor interfaces will allow for expeditionof encryption and/or decryption requests by the cryptographic component;however, the cryptographic component, alternatively, may run on aconventional CPU. The cryptographic component allows for the encryptionand/or decryption of provided data. The cryptographic component allowsfor both symmetric and asymmetric (e.g.” Pretty Good Protection (PGP))encryption and/or decryption. The cryptographic component may employcryptographic techniques such as, but not limited to: digitalcertificates (e.g.” X.S09 authentication framework), digital signatures,dual signatures, enveloping, password access protection, public keymanagement, and/or the like. The cryptographic component will facilitatenumerous (encryption and/or decryption) security protocols such as, butnot limited to: checksum, Data Encryption Standard (DES), EllipticalCurve Encryption (ECC), International Data Encryption Algorithm (IDEA),Message Digest 5 (MD5, which is a one way hash function), passwords,Rivest Cipher (RC5), Rijndael, RSA (which is an Internet encryption andauthentication system that uses an algorithm developed in 1977 by RonRivest, Adi Shamir, and Leonard Adleman), Secure Hash Algorithm (SHA),Secure Socket Layer (SSL), Secure Hypertext Transfer Protocol (HTTPS),and/or the like. Employing such encryption security protocols, the codetriggered information server may encrypt all incoming and/or outgoingcommunications and may serve as node within a virtual private network(VPN) with a wider communications network. The cryptographic componentfacilitates the process of “security authorization” whereby access to aresource is inhibited by a security protocol wherein the cryptographiccomponent effects authorized access to the secured resource. Inaddition, the cryptographic component may provide unique identifiers ofcontent, e.g.” employing an MD5 hash to obtain a unique signature for adigital audio file. A cryptographic component may communicate to and/orwith other components in a component collection, including itself,and/or facilities of the like. The cryptographic component supportsencryption schemes allowing for the secure transmission of informationacross a communications network to enable the code triggered informationserver component to engage in secure transactions if so desired. Thecryptographic component facilitates the secure accessing of resources onthe code triggered information server and facilitates the access ofsecured resources on remote systems; i.e.” it may act as a client and/orserver of secured resources. Most frequently, the cryptographiccomponent communicates with information servers, operating systems,other program components, and/or the like. The cryptographic componentmay contain, communicate, generate, obtain, and/or provide programcomponent, system, user, and/or data communications, requests, and/orresponses.

The Code Triggered Information Server Database

The code triggered information server database component 2419 may beembodied in a database and its stored data. The database is a storedprogram component, which is executed by the CPU; the stored programcomponent portion configuring the CPU to process the stored data. Thedatabase may be a conventional, fault tolerant, relational, scalable,secure database such as Oracle or Sybase. Relational databases are anextension of a flat file. Relational databases consist of a series ofrelated tables. The tables are interconnected via a key field. Use ofthe key field allows the combination of the tables by indexing againstthe key field; i.e.” the key fields act as dimensional pivot points forcombining information from various tables. Relationships generallyidentify links maintained between tables by matching primary keys.Primary keys represent fields that uniquely identify the rows of a tablein a relational database. More precisely, they uniquely identify rows ofa table on the “one” side of a one-to-many relationship.

Alternatively, the code triggered information server database may beimplemented using various standard data-structures, such as an array,hash, (linked) list, struct, structured text file (e.g.” XML), table,and/or the like. Such data-structures may be stored in memory and/or in(structured) files. In another alternative, an object-oriented databasemay be used, such as Frontier, ObjectStore, Poet, Zope, and/or the like.Object databases can include a number of object collections that aregrouped and/or linked together by common attributes; they may be relatedto other object collections by some common attributes. Object-orienteddatabases perform similarly to relational databases with the exceptionthat objects are not just pieces of data but may have other types offunctionality encapsulated within a given object. If the code triggeredinformation server database is implemented as a data-structure, the useof the code triggered information server database 2419 may be integratedinto another component such as the code triggered information servercomponent 2435. Also, the database may be implemented as a mix of datastructures, objects, and relational structures. Databases may beconsolidated and/or distributed in countless variations through standarddata processing techniques. Portions of databases, e.g.” tables, may beexported and/or imported and thus decentralized and/or integrated.

In one embodiment, the database component 2419 includes several tables2419 a,b. A user profile table 2419 a includes fields such as, but notlimited to: a user ID, name, email address, address, demographicprofile, hardware ID, scan history record, scan statistics, and/or thelike. The user profile table may support and/or track multiple entityaccounts on a code triggered information server. An Information Basetable 2419 b includes fields such as, but not limited to: Ad providerID, Ad ID, Ad content, Ad labels, geographic tags, temporal tags,subject tags, Ad ratings, Ad statistics, and/or the like.

In one embodiment, the code triggered information server database mayinteract with other database systems. For example, employing adistributed database system, queries and data access by OLBS modules maytreat the combination of the code triggered information server database,an integrated data security layer database as a single database entity.

In one embodiment, user programs may contain various user interfaceprimitives, which may serve to update the code triggered informationserver. Also, various accounts may require custom database tablesdepending upon the environments and the types of clients the codetriggered information server may need to serve. It should be noted thatany unique fields may be designated as a key field throughout. In analternative embodiment, these tables have been decentralized into theirown databases and their respective database controllers (i.e.”individual database controllers for each of the above tables). Employingstandard data processing techniques, one may further distribute thedatabases over several computer systemizations and/or storage devices.Similarly, configurations of the decentralized database controllers maybe varied by consolidating and/or distributing the various databasecomponents 2419 a,b. The code triggered information server may beconfigured to keep track of various settings, inputs, and parameters viadatabase controllers.

The code triggered information server database may communicate to and/orwith other components in a component collection, including itself,and/or facilities of the like. Most frequently, the code triggeredinformation server database communicates with the code triggeredinformation server component, other program components, and/or the like.The database may contain, retain, and provide information regardingother nodes and data.

The Code Triggered Information Server

The code triggered information server component 2435 is a stored programcomponent that is executed by a CPU. The code triggered informationserver affects accessing, obtaining and the provision of information,services, transactions, and/or the like across various communicationsnetworks.

The code triggered information server component enables theidentification, generation, and aggregation of Scan Messages and ReplyMessages.

The code triggered information server component enabling access ofinformation between nodes may be developed by employing standarddevelopment tools such as, but not limited to: (ANSI) (Objective-) C(++), Apache components, binary executables, database adapters, Java,JavaScript, mapping tools, procedural and object oriented developmenttools, PERL, Python, shell scripts, SQL commands, web application serverextensions, WebObjects, and/or the like. In one embodiment, the codetriggered information server employs a cryptographic server to encryptand decrypt communications. The code triggered information servercomponent may communicate to and/or with other components in a componentcollection, including itself, and/or facilities of the like. Mostfrequently, the code triggered information server component communicateswith the code triggered information server database, operating systems,other program components, and/or the like. The code triggeredinformation server may contain, communicate, generate, obtain, and/orprovide program component, system, user, and/or data communications,requests, and/or responses.

Distributed Code Triggered Information Server

The structure and/or operation of any of the code triggered informationserver node controller components may be combined, consolidated, and/ordistributed in any number of ways to facilitate development and/ordeployment. Similarly, the component collection may be combined in anynumber of ways to facilitate deployment and/or development. Toaccomplish this, one may integrate the components into a common codebase or in a facility that can dynamically load the components on demandin an integrated fashion.

The component collection may be consolidated and/or distributed incountless variations through standard data processing and/or developmenttechniques. Multiple instances of anyone of the program components inthe program component collection may be instantiated on a single node,and/or across numerous nodes to improve performance throughload-balancing and/or data-processing techniques. Furthermore, singleinstances may also be distributed across multiple controllers and/orstorage devices; e.g., databases. All program component instances andcontrollers working in concert may do so through standard dataprocessing communication techniques.

The configuration of the code triggered information server controllerwill depend on the context of system deployment. Factors such as, butnot limited to, the budget, capacity, location, and/or use of theunderlying hardware resources may affect deployment requirements andconfiguration. Regardless of if the configuration results in moreconsolidated and/or integrated program components, results in a moredistributed series of program components, and/or results in somecombination between a consolidated and distributed configuration, datamay be communicated, obtained, and/or provided. Instances of componentsconsolidated into a common code base from the program componentcollection may communicate, obtain, and/or provide data. This may beaccomplished through intra-application data processing communicationtechniques such as, but not limited to: data referencing (e.g.,pointers), internal messaging, object instance variable communication,shared memory space, variable passing, and/or the like.

If component collection components are discrete, separate, and/orexternal to one another, then communicating, obtaining, and/or providingdata with and/or to other component components may be accomplishedthrough inter-application data processing communication techniques suchas, but not limited to: Application Program Interfaces (API) informationpassage; (distributed) Component Object Model ((D)COM), (Distributed)Object Linking and Embedding ((D)OLE), and/or the like), Common ObjectRequest Broker Architecture (CORBA), process pipes, shared files, and/orthe like. Messages sent between discrete component components forinter-application communication or within memory spaces of a singularcomponent for intra-application communication may be facilitated throughthe creation and parsing of a grammar. A grammar may be developed byusing standard development tools such as lex, yacc, XML, and/or thelike, which allow for grammar generation and parsing functionality,which in tum may form the basis of communication messages within andbetween components. Again, the configuration will depend upon thecontext of system deployment.

Among the embodiments envisioned as being within the scope of thepresent invention are the following:

1. A processor-implemented method embodiment for serving ambientcondition sensitive information to a mobile user, comprising:accumulating user activity interest information; accumulating usersituational information; associating the user activity interestinformation and user situational information with a user profile;updating the user profile with the associated information in a database;analyzing accumulated information associated with the user profile;querying an information database based on the analysis of the userprofile; selecting information based on the user profile and ambientconditions at a user location to include in a message; and sending themessage to a user.
 2. The method of embodiment 1, wherein theinformation included in the message sent to the user is selected basedon a ranking.
 3. The method of embodiment 1, further comprisingreceiving a relevance rating of the message sent to the user.
 4. Themethod of embodiment 1, further comprising updating an Ad profile basedon the user activity interest information and user situationalinformation.
 5. The method of embodiment 1, further, comprising:determining information to include in a message based on the querying ofthe information database.
 6. The method of embodiment 1, wherein theuser situational information includes geographic location.
 7. The methodof embodiment 7, wherein the user situational information includesgeographic location at a given time.
 8. The method of embodiment 1,wherein the user situational information includes a context of a scannedcode.
 9. The method of embodiment 1, wherein the user situationalinformation is continuously updated.
 10. The method of embodiment 1,wherein the accumulated user activity interest information comprises arecord of user behavior.
 11. The method of embodiment 1, wherein theuser activity interest information is comprised of a code scanned by amobile device.
 12. The method of embodiment 11, wherein the code is amatrix code and the scanned by a mobile device comprises taking apicture of the matrix code with a mobile device camera.
 13. The methodof embodiment 11, further comprising: receiving an image of the scannedcode at a server; and wherein analyzing accumulated informationassociated with the user profile comprises matching the code image to acode image database.
 14. The method of embodiment 13, wherein the imageof the scanned code was sent via MMS.
 15. The method of embodiment 14,wherein the message sent to the user is sent via MMS.
 16. The method ofembodiment 14, wherein the image of the scanned code was sent to a shortcode address.
 17. The method of embodiment 13, further comprising:performing an image enhancement on the image of the scanned code priorto matching the code image to a code image database.
 18. The method ofembodiment 1, wherein the message sent to the user is sent to a mobiledevice.
 19. The method of embodiment 1, wherein the ambient conditionsare measured by a user mobile device.
 20. The method of embodiment 1,wherein the ambient conditions are retrieved from an ambient conditiondata feed.
 21. The method of embodiment 1, wherein the ambientconditions comprise weather information.
 22. The method of embodiment 1,wherein the ambient conditions comprise news information.
 23. The methodof embodiment 1, further comprising: querying a marketer rule databaseto extract a marketer rule; and wherein the selecting information isfurther based on implementation of the marketer rule.
 24. The method ofembodiment 1, further comprising: querying a third party customerdatabase to extract a customer record; and wherein the selectinginformation is further based on the customer record.
 5. Aprocessor-implemented method embodiment for serving ambient conditionsensitive information to a mobile user, comprising: receiving at aserver messages from a user comprised of user identification, mobiledevice identification, a code image scanned by the mobile device, timeof the scan, and user geographic location at the time of the scan,wherein the messages were sent to a short code address via MMS;associating the user identification with a user profile in a database;updating the user profile with the received messages; enhancing the codeimage scanned by the mobile device; analyzing the accumulated messagesin the user profile; determining proper information to serve to the userbased on the received message, the user profile, and ambient conditionsat a user location; selecting the information to serve to the user froma database; incorporating the selected information into a reply message;and sending the reply message to the user's mobile device via MMS.
 26. Aprocessor-implemented method embodiment for receiving ambient conditionsensitive information, comprising: accumulating user activity interestinformation; accumulating user situational information, includingambient conditions at a user location; incorporating user activityinterest information in an interest message; incorporating usersituational information in a situational message; sending the interestmessage to a server; sending the situational message to the server; andreceiving a reply based on the interest message, the situationalmessage, and a user profile.
 27. The method of embodiment 26, whereinthe interest message and situational message are bundled into a singlemessage.
 28. The method of embodiment 26, further comprising respondingto the reply with a relevance rating.
 29. The method of embodiment 26,wherein the reply is received on a mobile device.
 30. The method ofembodiment 26, wherein the interest message and situational message aresent from a mobile device.
 31. The method of embodiment 26, wherein theuser activity interest information is comprised of a code scanned by amobile device.
 32. The method of embodiment 26, wherein the usersituational information includes geographic location at a given time.33. A processor-implemented method embodiment of serving ambientcondition sensitive information, comprising: accumulating user activityinterest information; accumulating user situational information;analyzing the user activity interest information and user situationalinformation; predicting expected user interest and situationalinformation from the analysis; determining serving information to serveto a user based on expected user interest information, expected usersituational information, and ambient conditions at a user location;selecting the information to serve from a database; incorporating theselected information into a message; determining a target time and placeto send a message; incorporating serving information and target time andplace into a message; and sending the message for distribution.
 34. Themethod of embodiment 33, further, comprising: querying and selecting theinformation to serve from a database.
 35. The method of embodiment 34,further, comprising: incorporating the selected information into amessage.
 36. The method of embodiment 33, further comprising receiving arelevance rating of the distributed message.
 37. The method ofembodiment 33, wherein the message is sent to a user.
 38. The method ofembodiment 33, wherein the proper place is an advertising system. 39.The method of embodiment 38, further, comprising: querying and selectingthe information to serve from a database.
 40. The method of embodiment39, further, comprising: incorporating the selected information into amessage.
 41. The method of embodiment 40, wherein the message includesthe target place and time.
 42. The method of embodiment 41, wherein themessage includes the determined serving information.
 43. The method ofembodiment 42, wherein the advertising system may use the target placeand time information to place advertising for a user to observe.
 44. Themethod of embodiment 41, further, comprising: querying and selecting theinformation to serve from a database.
 45. The method of embodiment 44,further, comprising: incorporating the selected information into aplacement message.
 46. The method of embodiment 45, wherein theadvertising system may use the target place and time information andplacement message to place advertising for a user to observe.
 47. Themethod of embodiment 33, wherein the user situational information iscomprised of user space-time trajectories.
 48. The method of embodiment33, wherein the user situational information is comprised of userweb-surfing habits.
 49. The method of embodiment 33, wherein the usersituational information is comprised of user trajectories in a virtualworld.
 50. The method of embodiment 33, wherein the information servedto the user is sent to a mobile device.
 51. The method of embodiment 33,wherein the information served to the user is served on a website. 52.The method of embodiment 33, wherein the information served to the useris served in a virtual world.
 53. The method of embodiment 33, whereinthe information served to the user is based on the user's geographicposition.
 54. The method of embodiment 33, wherein the informationserved to the user is based on the time.
 55. A processor-implementedmethod embodiment for accumulating user information and deliveringtargeted content based thereon, comprising: accumulating user activityinterest information; accumulating user situational information;associating the user activity interest information and user situationalinformation with a user profile; updating the user profile with theassociated information in a database; analyzing accumulated informationassociated with the user profile; querying an information database basedon the analysis of the user profile; selecting information based on theuser profile to include in a message; and sending the message to a user.56. The method of embodiment 55, wherein the information included in themessage sent to the user is selected based on a ranking.
 57. The methodof embodiment 55, further comprising receiving a relevance rating of themessage sent to the user.
 58. The method of embodiment 55, furthercomprising updating an Ad profile based on the user activity interestinformation and user situational information.
 59. The method ofembodiment 55, further, comprising: determining information to includein a message based on the querying of the information database.
 60. Themethod of embodiment 55, wherein the user situational informationincludes geographic location.
 61. The method of embodiment 60, whereinthe user situational information includes geographic location at a giventime.
 62. The method of embodiment 55, wherein the user situationalinformation includes a context of a scanned code.
 63. The method ofembodiment 55, wherein the user situational information is continuouslyupdated.
 64. The method of embodiment 55, wherein the accumulated useractivity interest information comprises a record of user behavior. 65.The method of embodiment 55, wherein the user activity interestinformation is comprised of a code scanned by a mobile device.
 66. Themethod of embodiment 65, wherein the code is a matrix code and thescanned by a mobile device comprises taking a picture of the matrix codewith a mobile device camera.
 67. The method of embodiment 65, furthercomprising: receiving an image of the scanned code at a server; andwherein analyzing accumulated information associated with the userprofile comprises matching the code image to a code image database. 68.The method of embodiment 67, wherein the image of the scanned code wassent via MMS.
 69. The method of embodiment 68, wherein the message sentto the user is sent via MMS.
 70. The method of embodiment 69, whereinthe image of the scanned code was sent to a short code address.
 71. Themethod of embodiment 70, further comprising: performing an imageenhancement on the image of the scanned code prior to matching the codeimage to a code image database.
 72. The method of embodiment 55, whereinthe message sent to the user is sent to a mobile device.
 73. The methodof embodiment 55, wherein the message sent to the user is served on awebsite.
 74. The method of embodiment 55, further comprising: querying amarketer rule database to extract a marketer rule; and wherein theselecting information is further based on implementation of the marketerrule.
 75. The method of embodiment 55, further comprising: querying athird party customer database to extract a customer record; and whereinthe selecting information is further based on the customer record.
 76. Aprocessor-implemented method embodiment for accumulating mobile devicecode scan information from a user and delivering content based thereon,comprising: receiving at a server messages from a user comprised of useridentification, mobile device identification, a code image scanned bythe mobile device, time of the scan, and user geographic location at thetime of the scan, wherein the messages were sent to a shortcode addressvia MMS; associating the user identification with a user profile in adatabase; updating the user profile with the received messages;enhancing the code image scanned by the mobile device; analyzing theaccumulated messages in the user profile; determining proper informationto serve to the user based on the received message and the user profile;selecting the information to serve to the user from a database;incorporating the selected information into a reply message; and sendingthe reply message to the user's mobile device via MMS.
 77. Aprocessor-implemented method embodiment for receiving information basedon accumulated user activity and situational information, comprising:accumulating user activity interest information; accumulating usersituational information; incorporating user activity interestinformation in an interest message; incorporating user situationalinformation in a situational message; sending the interest message to aserver; sending the situational message to the server; and receiving areply based on the interest message, the situational message, and a userprofile.
 78. The method of embodiment 77, wherein the interest messageand situational message are bundled into a single message.
 79. Themethod of embodiment 77, further comprising responding to the reply witha relevance rating.
 80. The method of embodiment 77, wherein the replyis received on a mobile device.
 81. The method of embodiment 77, whereinthe interest message and situational message are sent from a mobiledevice.
 82. The method of embodiment 77, wherein the user activityinterest information is comprised of a code scanned by a mobile device.83. The method of embodiment 77, wherein the user situationalinformation includes geographic location at a given time.
 84. Aprocessor-implemented method embodiment of selecting data from adatabase based on user activity interest information, comprising:filtering data in the database by activity subject tags; determiningwhich remaining data match: user demographic category tags; usergeographic location tags; user temporal tags; selecting the data withthe greatest number of matches; and choosing a single datum from theremaining data.
 85. The method of embodiment 84, wherein the datafiltered by activity subject tags are further matched to user subjectinterest tags.
 86. The method of embodiment 84, wherein the datafiltered by activity subject tags are further matched to user hardwareidentification tags.
 87. The method of embodiment 84, wherein the dataare ads.
 88. A processor-implemented method embodiment for predictinguser interest and situations and supplying information to the user basedthereon, comprising: accumulating user activity interest information;accumulating user situational information; analyzing the user activityinterest information and user situational information; predictingexpected user interest and situational information from the analysis;determining serving information to serve to a user based on expecteduser interest and situational information; selecting the information toserve from a database; incorporating the selected information into amessage; determining a target time and place to send a message;incorporating serving information and target time and place into amessage; and sending the message for distribution.
 89. The method ofembodiment 88, further, comprising: querying and selecting theinformation to serve from a database.
 90. The method of embodiment 89,further, comprising: incorporating the selected information into amessage.
 91. The method of embodiment 88, further comprising receiving arelevance rating of the distributed message.
 92. The method ofembodiment 88, wherein the message is sent to a user.
 93. The method ofembodiment 88, wherein the proper place is an advertising system. 94.The method of embodiment 93, further, comprising: querying and selectingthe information to serve from a database.
 95. The method of embodiment94, further, comprising: incorporating the selected information into amessage.
 96. The method of embodiment 95, wherein the message includesthe target place and time.
 97. The method of embodiment 96, wherein themessage includes the determined serving information.
 98. The method ofembodiment 97, wherein the advertising system may use the target placeand time information to place advertising for a user to observe.
 99. Themethod of embodiment 96, further, comprising: querying and selecting theinformation to serve from a database.
 100. The method of embodiment 99,further, comprising: incorporating the selected information into aplacement message.
 101. The method of embodiment 100, wherein theadvertising system may use the target place and time information andplacement message to place advertising for a user to observe.
 102. Themethod of embodiment 88, wherein the user situational information iscomprised of user space-time trajectories.
 103. The method of embodiment88, wherein the user activity interest information is comprised of acode scanned by a mobile device.
 104. The method of embodiment 103,wherein the code is a matrix code and the scanned by a mobile devicecomprises taking a picture of the matrix code with a mobile devicecamera.
 105. The method of embodiment 104, further comprising: receivingan image of the scanned code at a server; and wherein analyzingaccumulated information associated with the user profile comprisesmatching the code image to a code image database.
 106. The method ofembodiment 105, wherein the image of the scanned code was sent via MMS.107. The method of embodiment 106, wherein the message sent to the useris sent via MMS.
 108. The method of embodiment 106 wherein the image ofthe scanned code was sent to a short code address.
 109. The method ofembodiment 105 urther comprising: performing an image enhancement on theimage of the scanned code prior to matching the code image to a codeimage database.
 110. The method of embodiment 88, wherein theinformation served to the user is sent to a mobile device.
 111. Themethod of embodiment 88, wherein the information served to the user isbased on the user's geographic position.
 112. A processor-implementedmethod embodiment for predicting user interest and situations andsupplying information to the user based thereon, comprising:accumulating at a server a plurality of code images scanned by a user'smobile device and sent to a short code address via MMS; accumulatinguser situational information; analyzing the user activity interestinformation and user situational information; predicting expected userinterest and situational information from the analysis; determiningserving information to serve to a user based on expected user interestand situational information; selecting the information to serve from adatabase; incorporating the selected information into a message;determining a target time and place to send a message; incorporatingserving information and target time and place into a message; andsending the message for distribution via MMS.
 113. Aprocessor-implemented method embodiment for scoring data based on a userprofile and situational information and selecting data from a database,comprising: assigning the same initial score to every datum; multiplyingeach datum's score by a subject coefficient for every match between thedatum's subject tag and subject tags in a user profile; multiplying eachdatum's score by a temporal coefficient for a match between the datum'stemporal tag and a temporal tag in a user profile; multiplying eachdatum's score by a demographic coefficient for a match between thedatum's demographic tags and demographic tags in a user profile;selecting the highest scoring data; and selecting a single datum fromthe remaining data.
 114. The method of embodiment 113, wherein eachdatum's score is further multiplied by a geographic coefficient forevery match between the datum's geographic tags and the geographic tagsin a user profile.
 115. The method of embodiment 113, wherein eachdatum's score is further multiplied by a hardware coefficient for everymatch between the datum's hardware identification tags and the hardwareidentification tags in a user profile.
 116. The method of embodiment 113wherein the data are ads.
 117. A processor-implemented method embodimentfor coordinating personnel based on delivered personnel directives,comprising: accumulating user activity information; accumulating usersituational information; associating the user activity interestinformation and user situational information with a user profile;updating the user profile with the associated information in a database;analyzing accumulated information associated with the user profile;querying an information database based on the analysis of the userprofile; selecting information based on the user profile to include in apersonnel directive; and sending the personnel directive to a user. 118.The method of embodiment 117, wherein the information included in thepersonnel directive sent to the user is selected based on a ranking.119. The method of embodiment 118, wherein the ranking is based on theuser's employment status.
 120. The method of embodiment 118, wherein theranking is based on the user's progress in accomplishing a series oftasks.
 121. The method of embodiment 117, further comprising receiving arelevance rating of the personnel directive sent to the user.
 122. Themethod of embodiment 117, further comprising updating an Ad profilebased on the user activity interest information and user situationalinformation.
 123. The method of embodiment 117, wherein the informationincluded in the personnel directive sent to the user is selected basedon ambient conditions.
 124. The method of embodiment 117, further,comprising: determining information to include in a personnel directivebased on the querying of the information database.
 125. The method ofembodiment 117, wherein the user situational information includesgeographic location.
 126. The method of embodiment 125, wherein the usersituational information includes geographic location at a given time.127. The method of embodiment 117, wherein the user activity informationis comprised of a code scanned by a mobile device.
 128. The method ofembodiment 127, wherein the code is a matrix code and the scanned by amobile device comprises taking a picture of the matrix code with amobile device camera.
 129. The method of embodiment 128 furthercomprising: receiving an image of the scanned code at a server; andwherein analyzing accumulated information associated with the userprofile comprises matching the code image to a code image database. 130.The method of embodiment 129, wherein the image of the scanned code wassent via MMS.
 131. The method of embodiment 130, wherein the messagesent to the user is sent via MMS.
 132. The method of embodiment 130,wherein the image of the scanned code was sent to a short code address.133. The method of embodiment 129, further comprising: performing animage enhancement on the image of the scanned code prior to matching thecode image to a code image database.
 134. The method of embodiment 117,wherein the user activity information is comprised of an internet linkchosen by the user.
 135. The method of embodiment 117, wherein the useractivity information is comprised of user decisions within a virtualworld.
 136. The method of embodiment 117, wherein the personneldirective sent to the user is sent to a mobile device.
 137. The methodof embodiment 117, wherein the personnel directive sent to the user isserved on a website.
 138. The method of embodiment 117, wherein thepersonnel directive sent to the user is served within a virtual world.139. A processor-implemented method embodiment for coordinatingpersonnel by serving personnel directives to a mobile device,comprising: receiving at a server messages from a user comprised of useridentification, mobile device identification, a code image scanned bythe mobile device, time of the scan, and user geographic location at thetime of the scan, wherein the messages are sent to a short code addressvia MMS; associating the user identification with a user profile in adatabase; updating the user profile with the received messages;enhancing the code image scanned by the mobile device; analyzing theaccumulated messages in the user profile; determining proper informationto serve to the user based on the received message and the user profile;selecting the information to serve to the user from a database;incorporating the selected information into a personnel directive; andsending the personnel directive to the user's mobile device via MMS.140. A processor-implemented method embodiment for receiving personneldirectives, comprising: accumulating user activity information;accumulating user situational information; incorporating user activityinformation in an activity message; incorporating user situationalinformation in a situational message; sending the activity message to aserver; sending the situational message to the server; and receiving apersonnel directive based on the activity message, the situationalmessage, and a user profile.
 141. The method of embodiment 140, whereinthe activity message and situational message are bundled into a singlemessage.
 142. The method of embodiment 140, further comprisingresponding to the personnel directive with a relevance rating.
 143. Themethod of embodiment 140, wherein the personnel directive is received ona mobile device.
 144. The method of embodiment 140, wherein the activitymessage and situational message are sent from a mobile device.
 145. Themethod of embodiment 140, wherein the user activity information iscomprised of a code scanned by a mobile device.
 146. The method ofembodiment 140, wherein the user activity information is comprised of aninternet link chosen by a user.
 147. The method of embodiment 140,wherein the user activity information is comprised of user decisionswithin a virtual world.
 148. The method of embodiment 140, wherein theuser situational information includes geographic location at a giventime.
 149. A processor-implemented method embodiment for coordinatingpersonnel based on delivered personnel directives, comprising:accumulating user activity information; accumulating user situationalinformation; analyzing the user activity interest information and usersituational information; predicting expected user activity andsituational information from the analysis; determining servinginformation to serve to a user based on expected user activity andsituational information; selecting the information to serve from adatabase; incorporating the selected information into a personneldirective; determining a target time and place to send the personneldirective; incorporating the personnel directive and target time andplace into a message; and sending the message for distribution.
 150. Themethod of embodiment 149, further, comprising: querying and selectingthe personnel directive from a database.
 151. The method of embodiment150, further, comprising: incorporating the selected personnel directiveinto a message.
 152. The method of embodiment 149, wherein the expectedsituational information includes ambient conditions.
 153. The method ofembodiment 149, further comprising receiving a relevance rating of thedistributed message.
 154. The method of embodiment 149, wherein themessage is sent to a user.
 155. The method of embodiment 149, whereinthe message is sent to a distribution system.
 156. The method ofembodiment 155, further, comprising: querying and selecting thepersonnel directive to serve from a database.
 157. The method ofembodiment 156, further, comprising: incorporating the selectedpersonnel directive into a message.
 158. The method of embodiment 157,wherein the message includes the target place and time.
 159. The methodof embodiment 158, wherein the message includes the determined servinginformation.
 160. The method of embodiment 159, wherein the distributionsystem may use the target place and time information to place apersonnel directive for a user to observe.
 161. The method of embodiment158, further, comprising: querying and selecting the personnel directiveto serve from a database.
 162. The method of embodiment 161, further,comprising: incorporating the selected personnel directive into aplacement message.
 163. The method of embodiment 162, wherein thedistribution system may use the target place and time information andplacement message to place personnel directives for a user to observe.164. The method of embodiment 149, wherein the user situationalinformation is comprised of user space-time trajectories.
 165. Themethod of embodiment 149, wherein the user situational information iscomprised of user web-surfing habits.
 166. The method of embodiment 149,wherein the user situational information is comprised of usertrajectories in a virtual world.
 167. The method of embodiment 149,wherein the personnel directive served to the user is sent to a mobiledevice.
 168. The method of embodiment 149, wherein the personneldirective served to the user is served on a website.
 169. The method ofembodiment 149, wherein the personnel directive served to the user isserved in a virtual world.
 170. The method of embodiment 149, whereinthe personnel directive served to the user is based on the user'sgeographic position.
 171. The method of embodiment 149, wherein thepersonnel directive served to the user is based on the time.
 172. Themethod of embodiment 149, wherein the personnel directive is based onthe user's employment status.
 173. The method of embodiment 149, whereinthe personnel directive is based on the user's progress in accomplishinga series of tasks.
 174. A processor-implemented method embodiment forselecting data from a database based on user activity information andemployment status, comprising: filtering data in the database by useremployment status tags; filtering data in the database by activitysubject tags; determining which remaining data match: user geographiclocation tags; user temporal tags; selecting the data with the greatestnumber of matches; and choosing a single datum from the remaining data.175. The method of embodiment 174, wherein the data filtered by activitysubject tags are further matched to user subject interest tags.
 176. Themethod of embodiment 174, wherein the data filtered by activity subjecttags are further matched to user demographic tags.
 177. The method ofembodiment 174, wherein the data filtered by activity subject tags arefurther matched to user hardware identification tags.
 178. The method ofembodiment 174, wherein the data are personnel directives.
 179. Aprocessor-implemented method embodiment for selecting data from adatabase based on employment status, subject, and time, comprising:assigning the same initial score to every datum; multiplying eachdatum's score by a status coefficient for every match between thedatum's employment status tag and employment status tag in a userprofile; multiplying each datum's score by a subject coefficient forevery match between the datum's subject tag and subject tags in a userprofile; multiplying each datum's score by a temporal coefficient for amatch between the datum's temporal tag and a temporal tag in a userprofile; selecting the highest scoring data; and selecting a singledatum from the remaining data.
 180. The method of embodiment 179,wherein each datum's score is further multiplied by a demographiccoefficient for a match between the datum's demographic tags anddemographic tags in a user profile.
 181. The method of embodiment 179,wherein each datum's score is further multiplied by a geographiccoefficient for a match between the datum's geographic tags and thegeographic tags in a user profile.
 182. The method of embodiment 179,wherein each datum's score is further multiplied by a hardwarecoefficient for a match between the datum's hardware identification tagsand the hardware identification tags in a user profile.
 183. The methodof embodiment 179 wherein the data are personnel directives.
 184. Aprocessor-implemented method embodiment for generating proximitynotifications indicating proximities between users, comprising:accumulating user situational information; accumulating user associationinformation; analyzing the user situational information; predictingexpected user interest and situational information from the analysis;determining if a user is in proximity with other users contained in theuser association information; and notifying a user of the proximity.185. The method of embodiment 184, wherein the user situationalinformation is comprised of user space-time trajectories.
 186. Themethod of embodiment 184, wherein the user situational information iscomprised of user web surfing habits.
 187. The method of embodiment 184,wherein the user situational information is comprised of usertrajectories in a virtual world.
 188. The method of embodiment 184,further comprising notifying any of the other users of the proximity.189. The method of embodiment 184, wherein the notification of proximityis further based on user profiles.
 190. The method of embodiment 184,wherein the user situational information is comprised of a locationcorresponding to a code scanned by a mobile device.
 191. The method ofembodiment 190, wherein the code is a matrix code and the scanned by amobile device comprises taking a picture of the matrix code with amobile device camera.
 192. The method of embodiment 191 furthercomprising: receiving an image of the scanned code at a server.
 193. Themethod of embodiment 192, wherein the image of the scanned code was sentvia MMS.
 194. The method of embodiment 193, wherein the message sent tothe user is sent via MMS.
 195. The method of embodiment 193, wherein theimage of the scanned code was sent to a short code address.
 196. Themethod of embodiment 192, further comprising: performing an imageenhancement on the image of the scanned code.
 197. Aprocessor-implemented method embodiment for serving information to userswithin a virtual world based on accumulated user information,comprising: accumulating user activity interest information;accumulating user situational information; associating the user activityinterest information and user situational information with a userprofile; updating the user profile with the associated information in adatabase; analyzing accumulated information associated with the userprofile; querying an information database based on the analysis of theuser profile; selecting information based on the user profile to includein a message; and serving the message in a virtual world.
 198. Themethod of embodiment 197, wherein the information included in themessage sent to the user is selected based on a ranking.
 199. The methodof embodiment 197, further comprising receiving a relevance rating ofthe message sent to the user.
 200. The method of embodiment 197, furthercomprising updating an Ad profile based on the user activity interestinformation and user situational information.
 201. The method ofembodiment 197, wherein the information included in the message sent tothe user is selected based on ambient conditions within the virtualworld.
 202. The method of embodiment 197, further, comprising:determining information to include in a message based on the querying ofthe information database.
 203. The method of embodiment 197, wherein theuser situational information includes geographic location.
 204. Themethod of embodiment 203, wherein the user situational informationincludes geographic location at a given time.
 205. The method ofembodiment 197, wherein the user situational information includeslocation within a virtual world.
 206. The method of embodiment 205,wherein the user situational information includes location within avirtual world at a given time.
 207. The method of embodiment 197,wherein the user activity interest information is comprised of a codescanned by a mobile device.
 208. The method of embodiment 197, whereinthe user activity interest information is comprised of an internet linkchosen by the user.
 209. The method of embodiment 197, wherein the useractivity interest information is comprised of a user decision within avirtual world.
 210. The method of embodiment 197, wherein the messagesent to the user is sent to a mobile device.
 211. Aprocessor-implemented method embodiment for serving information in avirtual world based on accumulated user information, comprising:receiving messages from a user comprised of user identification, a userdecision within a virtual world, time of the decision, and user locationwithin the virtual world at the time of the decision; associating theuser identification with a user profile in a database; updating the userprofile with the received messages; analyzing the accumulated messagesin the user profile; determining proper information to serve to the userbased on the received message and the user profile; selecting theinformation to serve to the user from a database; incorporating theselected information into a reply message; and serving the reply messagewithin the virtual world.
 212. A processor-implemented method embodimentfor receiving information within a virtual world, comprising:accumulating user activity interest information; accumulating usersituational information; incorporating user activity interestinformation in an interest message; incorporating user situationalinformation in a situational message; sending the interest message to aserver; sending the situational message to the server; and receiving areply that is displayed within a virtual world based on the interestmessage, the situational message, and a user profile.
 213. The method ofembodiment 212, wherein the interest message and situational message arebundled into a single message.
 214. The method of embodiment 212,further comprising responding to the reply with a relevance rating. 215.The method of embodiment 212, wherein the reply is received on a mobiledevice.
 216. The method of embodiment 212, wherein the interest messageand situational message are sent from a mobile device.
 217. The methodof embodiment 212, wherein the user activity interest information iscomprised of a code scanned by a mobile device.
 218. The method ofembodiment 212, wherein the user activity interest information iscomprised of a user decision within a virtual world.
 219. The method ofembodiment 212, wherein the user situational information includesgeographic location at a given time.
 220. The method of embodiment 212,wherein the user situational information includes location within avirtual world at a given time.
 221. A processor-implemented methodembodiment for serving information within a virtual world based onaccumulated user information, comprising: accumulating user activityinterest information; accumulating user situational information;analyzing the user activity interest information and user situationalinformation; predicting expected user interest and situationalinformation from the analysis; determining serving information to serveto a user based on expected user interest and situational information;selecting the information to serve from a database; incorporating theselected information into a message; determining a target time and placeto send a message; incorporating serving information and target time andplace into a message; and sending the message for distribution within avirtual world.
 222. The method of embodiment 221, further, comprising:querying and selecting the information to serve from a database. 223.The method of embodiment 222, further, comprising: incorporating theselected information into a message.
 224. The method of embodiment 221,wherein the expected situational information includes ambient conditionswithin a virtual world.
 225. The method of embodiment 221, furthercomprising receiving a relevance rating of the distributed message. 226.The method of embodiment 221, wherein the message is served to a user.227. The method of embodiment 221, wherein the message is sent to anadvertising system.
 228. The method of embodiment 227, further,comprising: querying and selecting the information to serve from adatabase.
 229. The method of embodiment 228, further, comprising:incorporating the selected information into a message.
 230. The methodof embodiment 229, wherein the message includes the target locationwithin a virtual world and time.
 231. The method of embodiment 230,wherein the message includes the determined serving information. 232.The method of embodiment 231, wherein the advertising system may use thetarget location within a virtual world and time information to placeadvertising for a user to observe.
 233. The method of embodiment 230,further, comprising: querying and selecting the information to servefrom a database.
 234. The method of embodiment 233, further, comprising:incorporating the selected information into a placement message. 235.The method of embodiment 234, wherein the advertising system may use thetarget location within a virtual world and time information andplacement message to place advertising for a user to observe.
 236. Themethod of embodiment 221, wherein the user situational information iscomprised of user space-time trajectories.
 237. The method of embodiment221, wherein the user situational information is comprised of usertrajectories within a virtual world.
 238. The method of embodiment 221,wherein the information served to the user is sent to a mobile device.239. The method of embodiment 221, wherein the information served to theuser is based on the user's geographic position.
 240. The method ofembodiment 221, wherein the information served to the user is based onthe user's position within a virtual world.
 241. The method ofembodiment 221, wherein the information served to the user is based onthe time.
 242. A processor-implemented method embodiment for selectingdata from a database based on user virtual world activity interest andsituational information, comprising: filtering data in the database byvirtual world decision subject tags; determining which remaining datamatch: user demographic category tags; user virtual world location tags;user temporal tags; selecting the data with the greatest number ofmatches; and choosing a single datum from the remaining data.
 243. Themethod of embodiment 242, wherein the data filtered by website subjecttags are further matched to user subject interest tags.
 244. The methodof embodiment 242, wherein the data are ads.
 245. Aprocessor-implemented method embodiment for selecting data from adatabase based on a virtual world location, comprising: assigning thesame initial score to every datum; multiplying each datum's score by asubject coefficient for every match between the datum's subject tag andsubject tags in a user profile; multiplying each datum's score by atemporal coefficient for a match between the datum's temporal tag and atemporal tag in a user profile; multiplying each datum's score by ademographic coefficient for a match between the datum's demographic tagsand demographic tags in a user profile; multiplying each datum's scoreby a virtual world location coefficient for every match between thedatum's virtual world location tags and the virtual world location tagsin the user profile; selecting the highest scoring data; and selecting asingle datum from the remaining data.
 246. The method of embodiment 245wherein the data are ads.
 247. A processor-implemented method embodimentfor tracking user information on the internet and serving information tousers based thereon, comprising: accumulating user activity interestinformation; accumulating user situational information; associating theuser activity interest information and user situational information witha user profile; updating the user profile with the associatedinformation in a database; analyzing accumulated information associatedwith the user profile; querying an information database based on theanalysis of the user profile; selecting information based on the userprofile to include in a message; and serving the message on a website.248. The method of embodiment 247, wherein the information included inthe message sent to the user is selected based on a ranking.
 249. Themethod of embodiment 247, further comprising receiving a relevancerating of the message sent to the user.
 250. The method of embodiment247, further comprising updating an Ad profile based on the useractivity interest information and user situational information.
 251. Themethod of embodiment 247, wherein the information included in themessage sent to the user is selected based on ambient conditions. 252.The method of embodiment 247, further, comprising: determininginformation to include in a message based on the querying of theinformation database.
 253. The method of embodiment 247, wherein theuser situational information includes geographic location.
 254. Themethod of embodiment 253, wherein the user situational informationincludes geographic location at a given time.
 255. The method ofembodiment 247, wherein the user activity interest information iscomprised of a code scanned by a mobile device.
 256. The method ofembodiment 247, wherein the user activity interest information iscomprised of an internet link chosen by the user.
 257. The method ofembodiment 247, wherein the message sent to the user is sent to a mobiledevice.
 258. A processor-implemented method embodiment for tracking userinformation on the internet and serving information to a mobile devicebased thereon, comprising: receiving messages from a user comprised ofuser identification, mobile device identification, a code scanned by themobile device, time of the scan, and user geographic location at thetime of the scan; associating the user identification with a userprofile in a database; updating the user profile with the receivedmessages; analyzing the accumulated messages in the user profile;determining proper information to serve to the user based on thereceived message and the user profile; selecting the information toserve to the user from a database; incorporating the selectedinformation into a reply message; and serving the reply message on awebsite.
 259. A processor-implemented method embodiment for receivinginformation on the internet based on accumulated user information,comprising: accumulating user activity interest information;accumulating user situational information; incorporating user activityinterest information in an interest message; incorporating usersituational information in a situational message; sending the interestmessage to a server; sending the situational message to the server; andreceiving a reply that is displayed on a website based on the interestmessage, the situational message, and a user profile.
 260. The method ofembodiment 259, wherein the interest message and situational message arebundled into a single message.
 261. The method of embodiment 259,further comprising responding to the reply with a relevance rating. 262.The method of embodiment 259, wherein the reply is received on a mobiledevice.
 263. The method of embodiment 259, wherein the interest messageand situational message are sent from a mobile device.
 264. The methodof embodiment 259, wherein the user activity interest information iscomprised of a code scanned by a mobile device.
 265. The method ofembodiment 259, wherein the user activity interest information iscomprised of an internet link chosen by a user.
 266. The method ofembodiment 259, wherein the user situational information includesgeographic location at a given time.
 267. A processor-implemented methodembodiment for serving information on a website based on accumulateduser information, comprising: accumulating user activity interestinformation; accumulating user situational information; analyzing theuser activity interest information and user situational information;predicting expected user interest and situational information from theanalysis; determining serving information to serve to a user based onexpected user interest and situational information; selecting theinformation to serve from a database; incorporating the selectedinformation into a message; determining a target time and place to senda message; incorporating serving information and target time and placeinto a message; and sending the message for distribution on a website.268. The method of embodiment 267, further, comprising: querying andselecting the information to serve from a database.
 269. The method ofembodiment 268, further, comprising: incorporating the selectedinformation into a message.
 270. The method of embodiment 267, whereinthe expected situational information includes ambient conditions. 271.The method of embodiment 267, further comprising receiving a relevancerating of the distributed message.
 272. The method of embodiment 267,wherein the message is served to a user.
 273. The method of embodiment267, wherein the message is sent to an advertising system.
 274. Themethod of embodiment 273, further, comprising: querying and selectingthe information to serve from a database.
 275. The method of embodiment274, further, comprising: incorporating the selected information into amessage.
 276. The method of embodiment 275, wherein the message includesthe target place and time.
 277. The method of embodiment 276, whereinthe message includes the determined serving information.
 278. The methodof embodiment 277, wherein the advertising system may use the targetplace and time information to place advertising for a user to observe.279. The method of embodiment 276, further, comprising: querying andselecting the information to serve from a database.
 280. The method ofembodiment 279, further, comprising: incorporating the selectedinformation into a placement message.
 281. The method of embodiment 280,wherein the advertising system may use the target place and timeinformation and placement message to place advertising for a user toobserve.
 282. The method of embodiment 267, wherein the user situationalinformation is comprised of user space-time trajectories.
 283. Themethod of embodiment 267, wherein the user situational information iscomprised of user web-surfing habits.
 284. The method of embodiment 267,wherein the information served to the user is sent to a mobile device.285. The method of embodiment 267, wherein the information served to theuser is based on the user's geographic position.
 286. The method ofembodiment 267, wherein the information served to the user is based onthe time.
 87. A processor-implemented method embodiment for selectingdata from a database based on user website interest information,comprising: filtering data in the database by website subject tags;determining which remaining data match: user demographic category tags;user current website tags; user temporal tags; selecting the data withthe greatest number of matches; and choosing a single datum from theremaining data.
 288. The method of embodiment 287, wherein the datafiltered by website subject tags are further matched to user subjectinterest tags.
 289. The method of embodiment 287, wherein the datafiltered by website subject tags are further matched to user hardwareidentification tags.
 290. The method of embodiment 287, wherein the dataare ads.
 291. A processor-implemented method embodiment for selectingdata from a database based on correlations between a user profile and adatum's website association, comprising: assigning the same initialscore to every datum; multiplying each datum's score by a subjectcoefficient for every match between the datum's subject tag and subjecttags in a user profile; multiplying each datum's score by a temporalcoefficient for a match between the datum's temporal tag and a temporaltag in a user profile; multiplying each datum's score by a demographiccoefficient for a match between the datum's demographic tags anddemographic tags in a user profile; multiplying each datum's score by awebsite coefficient for every match between the datum's website tags andthe website tags in the user profile; selecting the highest scoringdata; and selecting a single datum from the remaining data.
 292. Themethod of embodiment 291, wherein each datum's score is furthermultiplied by a hardware coefficient for every match between the datum'shardware identification tags and the hardware identification tags in auser profile.
 293. The method of embodiment 291 wherein the data areads.
 294. A processor implemented method embodiment for processing andresponding to ambiguous content requests, comprising: receiving ascanned code image and a user ID; analyzing the scanned code image todetermine if the information encoded therein is fully accessible;selecting a scanned code disambiguation process to apply to the scannedcode images if the information encoded therein is not fully accessible;applying the scanned code disambiguation process to the scanned codeimage to determine a most likely code; querying accumulated userinformation in a user profile associated with the user ID; querying acontent database to extract requested content based on the most likelycode and the accumulated user information; and sending the requestedcontent to a user.
 295. The method of embodiment 294, wherein thereceived scanned code image is sent via MMS.
 296. The method ofembodiment 295, wherein the received scan code image is sent to a shortcode address.
 297. The method of embodiment 296, wherein the requestedcontent is set to a user Via MMS.
 298. The method of embodiment 294,wherein the scanned code disambiguation process comprises: performing apartial decoding of the scanned code image; querying a code database toselect a plurality of codes matching the partial decoding of the scannedcode image; and selecting a most likely code from the plurality of codesbased on ancillary scanned code information.
 299. The method ofembodiment 298, wherein the ancillary scanned code information comprisesthe accumulated user information.
 300. The method of embodiment 299,wherein the ancillary scanned code information further comprisessituational information associated with the scanned code image.
 301. Themethod of embodiment 298, wherein the ancillary scanned code informationcomprises situational information associated with the scanned codeimage.
 302. The method of embodiment 301, wherein the situationalinformation comprises a context from which the scanned code image wasacquired.
 303. The method of embodiment 301, wherein the situationalinformation comprises a location at which the scanned code image wasacquired.
 304. The method of embodiment 294, wherein the scanned codedisambiguation process comprises a scanned code image enhancement. 305.The method of embodiment 304, wherein the scanned code image enhancementis configurable to perform downsizing, noise removal, contrastadjustment, brightness adjustment, image tilting, image rotating, focusadjustment, and edge recognition.
 306. The method of embodiment 294,wherein the scanned code disambiguation process is a server-sideprocess.
 307. The method of embodiment 294, wherein the scanned codedisambiguation process is a client-side process.
 308. A processorimplemented method embodiment for processing and responding to ambiguouscontent requests, comprising: receiving a scanned code image, a user ID,wherein the scanned code image is sent to a short code address via MMS;analyzing the scaned code image to determine if the information encodedtherein is fully accessible; selecting a server-side scanned codedisambiguation process to apply to the scanned code images if theinformation encoded therein is not fully accessible, wherein the scannedcode disambiguation process comprises any combination of scanned codeimage enhancement and partial decoding; applying the server-side scannedcode disambiguation process to the scanned code image to determine amost likely code; querying accumulated user information in a userprofile associated with the user ID; querying a content database toextract requested content based on the most likely code and theaccumulated user information; and sending the requested content to auser via MMS.
 309. An apparatus embodiment for serving ambient conditionsensitive information to a mobile user, comprising: a memory; aprocessor disposed in communication with said memory, and configured toissue a plurality of instructions stored in the memory, wherein theinstructions are issuable to: accumulate user activity interestinformation; accumulate user situational information; associate the useractivity interest information and user situational information with auser profile; update the user profile with the associated information ina database; analyze accumulated information associated with the userprofile; query an information database based on the analysis of the userprofile; select information based on the user profile and ambientconditions at a user location to include in a message; and send themessage to a user.
 310. An apparatus embodiment for serving ambientcondition sensitive information to a mobile user, comprising: a memory;a processor disposed in communication with said memory, and configuredto issue a plurality of instructions stored in the memory, wherein theinstructions are issuable to: receive at a server messages from a usercomprised of user identification, mobile device identification, a codeimage scanned by the mobile device, time of the scan, and usergeographic location at the time of the scan, wherein the messages weresent to a short code address via MMS; associate the user identificationwith a user profile in a database; update the user profile with thereceived messages; enhance the code image scanned by the mobile device;analyze the accumulated messages in the user profile; determine properinformation to serve to the user based on the received message, the userprofile, and ambient conditions at a user location; select theinformation to serve to the user from a database; incorporate theselected information into a reply message; and send the reply message tothe user's mobile device via MMS.
 311. An apparatus embodiment forreceiving ambient condition sensitive information, comprising: a memory;a processor disposed in communication with said memory, and configuredto issue a plurality of instructions stored in the memory, wherein theinstructions are issuable to: accumulate user activity interestinformation; accumulate user situational information, including ambientconditions at a user location; incorporate user activity interestinformation in an interest message; incorporate user situationalinformation in a situational message; sending the interest message to aserver; sending the situational message to the server; and receive areply based on the interest message, the situational message, and a userprofile.
 312. An apparatus embodiment of serving ambient conditionsensitive information, comprising: a memory; a processor disposed incommunication with said memory, and configured to issue a plurality ofinstructions stored in the memory, wherein the instructions are issuableto: accumulate user activity interest information; accumulate usersituational information; analyze the user activity interest informationand user situational information; predict expected user interest andsituational information from the analysis; determine serving informationto serve to a user based on expected user interest information, expecteduser situational information, and ambient conditions at a user location;select the information to serve from a database; incorporate theselected information into a message; determine a target time and placeto send a message; incorporate serving information and target time andplace into a message; and send the message for distribution.
 313. Anapparatus embodiment for accumulating user information and deliveringtargeted content based thereon, comprising: a memory; a processordisposed in communication with said memory, and configured to issue aplurality of instructions stored in the memory, wherein the instructionsare issuable to: accumulate user activity interest information;accumulate user situational information; associate the user activityinterest information and user situational information with a userprofile; update the user profile with the associated information in adatabase; analyze accumulated information associated with the userprofile; query an information database based on the analysis of the userprofile; select information based on the user profile to include in amessage; and send the message to a user.
 314. An apparatus embodimentfor accumulating mobile device code scan information from a user anddelivering content based thereon, comprising: a memory; a processordisposed in communication with said memory, and configured to issue aplurality of instructions stored in the memory, wherein the instructionsare issuable to: receive at a server messages from a user comprised ofuser identification, mobile device identification, a code image scannedby the mobile device, time of the scan, and user geographic location atthe time of the scan, wherein the messages were sent to a shortcodeaddress via MMS; associate the user identification with a user profilein a database; update the user profile with the received messages;enhance the code image scanned by the mobile device; analyze theaccumulated messages in the user profile; determine proper informationto serve to the user based on the received message and the user profile;select the information to serve to the user from a database; incorporatethe selected information into a reply message; and send the replymessage to the user's mobile device via MMS.
 315. An apparatusembodiment for receiving information based on accumulated user activityand situational information, comprising: a memory; a processor disposedin communication with said memory, and configured to issue a pluralityof instructions stored in the memory, wherein the instructions areissuable to: accumulate user activity interest information; accumulateuser situational information; incorporate user activity interestinformation in an interest message; incorporate user situationalinformation in a situational message; send the interest message to aserver; send the situational message to the server; and receive a replybased on the interest message, the situational message, and a userprofile.
 316. An apparatus embodiment of selecting data from a databasebased on user activity interest information, comprising: a memory; aprocessor disposed in communication with said memory, and configured toissue a plurality of instructions stored in the memory, wherein theinstructions are issuable to: filter data in the database by activitysubject tags; determine which remaining data match: user demographiccategory tags; user geographic location tags; user temporal tags; selectthe data with the greatest number of matches; and choose a single datumfrom the remaining data.
 317. An apparatus embodiment for predictinguser interest and situations and supplying information to the user basedthereon, comprising: a memory; a processor disposed in communicationwith said memory, and configured to issue a plurality of instructionsstored in the memory, wherein the instructions are issuable to:accumulate user activity interest information; accumulate usersituational information; analyze the user activity interest informationand user situational information; predict expected user interest andsituational information from the analysis; determine serving informationto serve to a user based on expected user interest and situationalinformation; select the information to serve from a database;incorporate the selected information into a message; determine a targettime and place to send a message; incorporate serving information andtarget time and place into a message; and send the message fordistribution.
 318. An apparatus embodiment for predicting user interestand situations and supplying information to the user based thereon,comprising: a memory; a processor disposed in communication with saidmemory, and configured to issue a plurality of instructions stored inthe memory, wherein the instructions are issuable to: accumulate at aserver a plurality of code images scanned by a user's mobile device andsent to a short code address via MMS; accumulate user situationalinformation; analyze the user activity interest information and usersituational information; predict expected user interest and situationalinformation from the analysis; determine serving information to serve toa user based on expected user interest and situational information;select the information to serve from a database; incorporate theselected information into a message; determine a target time and placeto send a message; incorporate serving information and target time andplace into a message; and send the message for distribution via MMS.319. An apparatus embodiment for scoring data based on a user profileand situational information and selecting data from a database,comprising: a memory; a processor disposed in communication with saidmemory, and configured to issue a plurality of instructions stored inthe memory, wherein the instructions are issuable to: assign the sameinitial score to every datum; multiply each datum's score by a subjectcoefficient for every match between the datum's subject tag and subjecttags in a user profile; multiply each datum's score by a temporalcoefficient for a match between the datum's temporal tag and a temporaltag in a user profile; multiply each datum's score by a demographiccoefficient for a match between the datum's demographic tags anddemographic tags in a user profile; select the highest scoring data; andselect a single datum from the remaining data.
 320. An apparatusembodiment for coordinating personnel based on delivered personneldirectives, comprising: a memory; a processor disposed in communicationwith said memory, and configured to issue a plurality of instructionsstored in the memory, wherein the instructions are issuable to:accumulate user activity information; accumulate user situationalinformation; associate the user activity interest information and usersituational information with a user profile; update the user profilewith the associated information in a database; analyze accumulatedinformation associated with the user profile; query an informationdatabase based on the analysis of the user profile; select informationbased on the user profile to include in a personnel directive; and sendthe personnel directive to a user.
 321. An apparatus embodiment forcoordinating personnel by serving personnel directives to a mobiledevice, comprising: a memory; a processor disposed in communication withsaid memory, and configured to issue a plurality of instructions storedin the memory, wherein the instructions are issuable to: receive at aserver messages from a user comprised of user identification, mobiledevice identification, a code image scanned by the mobile device, timeof the scan, and user geographic location at the time of the scan,wherein the messages are sent to a short code address via MMS; associatethe user identification with a user profile in a database; update theuser profile with the received messages; enhance the code image scannedby the mobile device; analyze the accumulated messages in the userprofile; determine proper information to serve to the user based on thereceived message and the user profile; select the information to serveto the user from a database; incorporate the selected information into apersonnel directive; and send the personnel directive to the user'smobile device via MMS.
 322. An apparatus embodiment for receivingpersonnel directives, comprising: a memory; a processor disposed incommunication with said memory, and configured to issue a plurality ofinstructions stored in the memory, wherein the instructions are issuableto: accumulate user activity information; accumulate user situationalinformation; incorporate user activity information in an activitymessage; incorporate user situational information in a situationalmessage; send the activity message to a server; send the situationalmessage to the server; and receive a personnel directive based on theactivity message, the situational message, and a user profile.
 323. Anapparatus embodiment for coordinating personnel based on deliveredpersonnel directives, comprising: a memory; a processor disposed incommunication with said memory, and configured to issue a plurality ofinstructions stored in the memory, wherein the instructions are issuableto: accumulate user activity information; accumulate user situationalinformation; analyze the user activity interest information and usersituational information; predict expected user activity and situationalinformation from the analysis; determine serving information to serve toa user based on expected user activity and situational information;select the information to serve from a database; incorporate theselected information into a personnel directive; determine a target timeand place to send the personnel directive; incorporate the personneldirective and target time and place into a message; and send the messagefor distribution.
 324. An apparatus embodiment for selecting data from adatabase based on user activity information and employment status,comprising: a memory; a processor disposed in communication with saidmemory, and configured to issue a plurality of instructions stored inthe memory, wherein the instructions are issuable to: filter data in thedatabase by user employment status tags; filter data in the database byactivity subject tags; determine which remaining data match: usergeographic location tags; user temporal tags; select the data with thegreatest number of matches; and choose a single datum from the remainingdata.
 325. An apparatus embodiment for selecting data from a databasebased on employment status, subject, and time, comprising: a memory; aprocessor disposed in communication with said memory, and configured toissue a plurality of instructions stored in the memory, wherein theinstructions are issuable to: assign the same initial score to everydatum; multiply each datum's score by a status coefficient for everymatch between the datum's employment status tag and employment statustag in a user profile; multiply each datum's score by a subjectcoefficient for every match between the datum's subject tag and subjecttags in a user profile; multiply each datum's score by a temporalcoefficient for a match between the datum's temporal tag and a temporaltag in a user profile; select the highest scoring data; and select asingle datum from the remaining data.
 326. An apparatus embodiment forgenerating proximity notifications indicating proximities between users,comprising: a memory; a processor disposed in communication with saidmemory, and configured to issue a plurality of instructions stored inthe memory, wherein the instructions are issuable to: accumulate usersituational information; accumulate user association information;analyze the user situational information; predict expected user interestand situational information from the analysis; determine if a user is inproximity with other users contained in the user associationinformation; and notify a user of the proximity.
 327. An apparatusembodiment for serving information to users within a virtual world basedon accumulated user information, comprising: a memory; a processordisposed in communication with said memory, and configured to issue aplurality of instructions stored in the memory, wherein the instructionsare issuable to: accumulate user activity interest information;accumulate user situational information; associate the user activityinterest information and user situational information with a userprofile; update the user profile with the associated information in adatabase; analyze accumulated information associated with the userprofile; query an information database based on the analysis of the userprofile; select information based on the user profile to include in amessage; and serve the message in a virtual world.
 328. An apparatusembodiment for serving information in a virtual world based onaccumulated user information, comprising: a memory; a processor disposedin communication with said memory, and configured to issue a pluralityof instructions stored in the memory, wherein the instructions areissuable to: receive messages from a user comprised of useridentification, a user decision within a virtual world, time of thedecision, and user location within the virtual world at the time of thedecision; associate the user identification with a user profile in adatabase; update the user profile with the received messages; analyzethe accumulated messages in the user profile; determine properinformation to serve to the user based on the received message and theuser profile; select the information to serve to the user from adatabase; incorporate the selected information into a reply message; andserve the reply message within the virtual world.
 329. An apparatusembodiment for receiving information within a virtual world, comprising:a memory; a processor disposed in communication with said memory, andconfigured to issue a plurality of instructions stored in the memory,wherein the instructions are issuable to: accumulate user activityinterest information; accumulate user situational information;incorporate user activity interest information in an interest message;incorporate user situational information in a situational message; sendthe interest message to a server; send the situational message to theserver; and receive a reply that is displayed within a virtual worldbased on the interest message, the situational message, and a userprofile.
 330. An apparatus embodiment for serving information within avirtual world based on accumulated user information, comprising: amemory; a processor disposed in communication with said memory, andconfigured to issue a plurality of instructions stored in the memory,wherein the instructions are issuable to: accumulate user activityinterest information; accumulate user situational information; analyzethe user activity interest information and user situational information;predict expected user interest and situational information from theanalysis; determine serving information to serve to a user based onexpected user interest and situational information; select theinformation to serve from a database; incorporate the selectedinformation into a message; determine a target time and place to send amessage; incorporate serving information and target time and place intoa message; and send the message for distribution within a virtual world.331. An apparatus embodiment for selecting data from a database based onuser virtual world activity interest and situational information,comprising: a memory; a processor disposed in communication with saidmemory, and configured to issue a plurality of instructions stored inthe memory, wherein the instructions are issuable to: filter data in thedatabase by virtual world decision subject tags; determine whichremaining data match: user demographic category tags; user virtual worldlocation tags; user temporal tags; select the data with the greatestnumber of matches; and choose a single datum from the remaining data.332. An apparatus embodiment for selecting data from a database based ona virtual world location, comprising: a memory; a processor disposed incommunication with said memory, and configured to issue a plurality ofinstructions stored in the memory, wherein the instructions are issuableto: assign the same initial score to every datum; multiply each datum'sscore by a subject coefficient for every match between the datum'ssubject tag and subject tags in a user profile; multiply each datum'sscore by a temporal coefficient for a match between the datum's temporaltag and a temporal tag in a user profile; multiply each datum's score bya demographic coefficient for a match between the datum's demographictags and demographic tags in a user profile; multiply each datum's scoreby a virtual world location coefficient for every match between thedatum's virtual world location tags and the virtual world location tagsin the user profile; select the highest scoring data; and select asingle datum from the remaining data.
 333. An apparatus embodiment fortracking user information on the internet and serving information tousers based thereon, comprising: a memory; a processor disposed incommunication with said memory, and configured to issue a plurality ofinstructions stored in the memory, wherein the instructions are issuableto: accumulate user activity interest information; accumulate usersituational information; associate the user activity interestinformation and user situational information with a user profile; updatethe user profile with the associated information in a database; analyzeaccumulated information associated with the user profile; query aninformation database based on the analysis of the user profile; selectinformation based on the user profile to include in a message; and servethe message on a website.
 334. An apparatus embodiment for tracking userinformation on the internet and serving information to a mobile devicebased thereon, comprising: a memory; a processor disposed incommunication with said memory, and configured to issue a plurality ofinstructions stored in the memory, wherein the instructions are issuableto: receive messages from a user comprised of user identification,mobile device identification, a code scanned by the mobile device, timeof the scan, and user geographic location at the time of the scan;associate the user identification with a user profile in a database;update the user profile with the received messages; analyze theaccumulated messages in the user profile; determine proper informationto serve to the user based on the received message and the user profile;select the information to serve to the user from a database; incorporatethe selected information into a reply message; and serve the replymessage on a website.
 335. An apparatus embodiment for receivinginformation on the internet based on accumulated user information,comprising: a memory; a processor disposed in communication with saidmemory, and configured to issue a plurality of instructions stored inthe memory, wherein the instructions are issuable to: accumulate useractivity interest information; accumulate user situational information;incorporate user activity interest information in an interest message;incorporate user situational information in a situational message; sendthe interest message to a server; send the situational message to theserver; and receive a reply that is displayed on a website based on theinterest message, the situational message, and a user profile.
 336. Anapparatus embodiment for serving information on a website based onaccumulated user information, comprising: a memory; a processor disposedin communication with said memory, and configured to issue a pluralityof instructions stored in the memory, wherein the instructions areissuable to: accumulate user activity interest information; accumulateuser situational information; analyze the user activity interestinformation and user situational information; predict expected userinterest and situational information from the analysis; determineserving information to serve to a user based on expected user interestand situational information; select the information to serve from adatabase; incorporate the selected information into a message; determinea target time and place to send a message; incorporate servinginformation and target time and place into a message; and send themessage for distribution on a website.
 337. An apparatus embodiment forselecting data from a database based on user website interestinformation, comprising: a memory; a processor disposed in communicationwith said memory, and configured to issue a plurality of instructionsstored in the memory, wherein the instructions are issuable to: filterdata in the database by website subject tags; determine which remainingdata match: user demographic category tags; user current website tags;user temporal tags; select the data with the greatest number of matches;and choose a single datum from the remaining data.
 338. An apparatusembodiment for selecting data from a database based on correlationsbetween a user profile and a datum's website association, comprising: amemory; a processor disposed in communication with said memory, andconfigured to issue a plurality of instructions stored in the memory,wherein the instructions are issuable to: assign the same initial scoreto every datum; multiply each datum's score by a subject coefficient forevery match between the datum's subject tag and subject tags in a userprofile; multiply each datum's score by a temporal coefficient for amatch between the datum's temporal tag and a temporal tag in a userprofile; multiply each datum's score by a demographic coefficient for amatch between the datum's demographic tags and demographic tags in auser profile; multiply each datum's score by a website coefficient forevery match between the datum's website tags and the website tags in theuser profile; select the highest scoring data; and select a single datumfrom the remaining data.
 339. An apparatus embodiment for processing andresponding to ambiguous content requests, comprising: a memory; aprocessor disposed in communication with said memory, and configured toissue a plurality of instructions stored in the memory, wherein theinstructions are issuable to: receive a scanned code image and a userID; analyze the scanned code image to determine if the informationencoded therein is fully accessible; select a scanned codedisambiguation process to apply to the scanned code images if theinformation encoded therein is not fully accessible; apply the scannedcode disambiguation process to the scanned code image to determine amost likely code; query accumulated user information in a user profileassociated with the user ID; query a content database to extractrequested content based on the most likely code and the accumulated userinformation; and send the requested content to a user.
 340. An apparatusembodiment for processing and responding to ambiguous content requests,comprising: a memory; a processor disposed in communication with saidmemory, and configured to issue a plurality of instructions stored inthe memory, wherein the instructions are issuable to: receive a scannedcode image, a user ID, wherein the scanned code image is sent to a shortcode address via MMS; analyze the scanned code image to determine if theinformation encoded therein is fully accessible; select a server-sidescanned code disambiguation process to apply to the scanned code imagesif the information encoded therein is not fully accessible, wherein thescanned code disambiguation process comprises any combination of scannedcode image enhancement and partial decoding; apply the server-sidescanned code disambiguation process to the scanned code image todetermine a most likely code; query accumulated user information in auser profile associated with the user ID; query a content database toextract requested content based on the most likely code and theaccumulated user information; and send the requested content to a uservia MMS.
 341. A system embodiment for serving ambient conditionsensitive information to a mobile user, comprising: means to accumulateuser activity interest information; means to accumulate user situationalinformation; means to associate the user activity interest informationand user situational information with a user profile; means to updatethe user profile with the associated information in a database; means toanalyze accumulated information associated with the user profile; meansto query an information database based on the analysis of the userprofile; means to select information based on the user profile andambient conditions at a user location to include in a message; and meansto send the message to a user.
 342. A system embodiment for servingambient condition sensitive information to a mobile user, comprising:means to receive at a server messages from a user comprised of useridentification, mobile device identification, a code image scanned bythe mobile device, time of the scan, and user geographic location at thetime of the scan, wherein the messages were sent to a short code addressvia MMS; means to associate the user identification with a user profilein a database; means to update the user profile with the receivedmessages; means to enhance the code image scanned by the mobile device;means to analyze the accumulated messages in the user profile; means todetermine proper information to serve to the user based on the receivedmessage, the user profile, and ambient conditions at a user location;means to select the information to serve to the user from a database;means to incorporate the selected information into a reply message; andmeans to send the reply message to the user's mobile device via MMS.343. A system embodiment for receiving ambient condition sensitiveinformation, comprising: means to accumulate user activity interestinformation; means to accumulate user situational information, includingambient conditions at a user location; means to incorporate useractivity interest information in an interest message; means toincorporate user situational information in a situational message; meansto sending the interest message to a server; means to sending thesituational message to the server; and means to receive a reply based onthe interest message, the situational message, and a user profile. 344.A system embodiment of serving ambient condition sensitive information,comprising: means to accumulate user activity interest information;means to accumulate user situational information; means to analyze theuser activity interest information and user situational information;means to predict expected user interest and situational information fromthe analysis; means to determine serving information to serve to a userbased on expected user interest information, expected user situationalinformation, and ambient conditions at a user location; means to selectthe information to serve from a database; means to incorporate theselected information into a message; means to determine a target timeand place to send a message; means to incorporate serving informationand target time and place into a message; and means to send the messagefor distribution.
 345. A system embodiment for accumulating userinformation and delivering targeted content based thereon, comprising:means to accumulate user activity interest information; means toaccumulate user situational information; means to associate the useractivity interest information and user situational information with auser profile; means to update the user profile with the associatedinformation in a database; means to analyze accumulated informationassociated with the user profile; means to query an information databasebased on the analysis of the user profile; means to select informationbased on the user profile to include in a message; and means to send themessage to a user.
 346. A system embodiment for accumulating mobiledevice code scan information from a user and delivering content basedthereon, comprising: means to receive at a server messages from a usercomprised of user identification, mobile device identification, a codeimage scanned by the mobile device, time of the scan, and usergeographic location at the time of the scan, wherein the messages weresent to a short code address via MMS; means to associate the useridentification with a user profile in a database; means to update theuser profile with the received messages; means to enhance the code imagescanned by the mobile device; means to analyze the accumulated messagesin the user profile; means to determine proper information to serve tothe user based on the received message and the user profile; means toselect the information to serve to the user from a database; means toincorporate the selected information into a reply message; and means tosend the reply message to the user's mobile device via MMS.
 347. Asystem embodiment for receiving information based on accumulated useractivity and situational information, comprising: means to accumulateuser activity interest information; means to accumulate user situationalinformation; means to incorporate user activity interest information inan interest message; means to incorporate user situational informationin a situational message; means to send the interest message to aserver; means to send the situational message to the server; and meansto receive a reply based on the interest message, the situationalmessage, and a user profile.
 348. A system embodiment of selecting datafrom a database based on user activity interest information, comprising:means to filter data in the database by activity subject tags; means todetermine which remaining data match: user demographic category tags;user geographic location tags; user temporal tags; means to select thedata with the greatest number of matches; and means to choose a singledatum from the remaining data.
 349. A system embodiment for predictinguser interest and situations and supplying information to the user basedthereon, comprising: means to accumulate user activity interestinformation; means to accumulate user situational information; means toanalyze the user activity interest information and user situationalinformation; means to predict expected user interest and situationalinformation from the analysis; means to determine serving information toserve to a user based on expected user interest and situationalinformation; means to select the information to serve from a database;means to incorporate the selected information into a message; means todetermine a target time and place to send a message; means toincorporate serving information and target time and place into amessage; and means to send the message for distribution.
 350. A systemembodiment for predicting user interest and situations and supplyinginformation to the user based thereon, comprising: means to accumulateat a server a plurality of code images scanned by a user's mobile deviceand sent to a short code address via MMS; means to accumulate usersituational information; means to analyze the user activity interestinformation and user situational information; means to predict expecteduser interest and situational information from the analysis; means todetermine serving information to serve to a user based on expected userinterest and situational information; means to select the information toserve from a database; means to incorporate the selected informationinto a message; means to determine a target time and place to send amessage; means to incorporate serving information and target time andplace into a message; and means to send the message for distribution viaMMS.
 351. A system embodiment for scoring data based on a user profileand situational information and selecting data from a database,comprising: means to assign the same initial score to every datum; meansto multiply each datum's score by a subject coefficient for every matchbetween the datum's subject tag and subject tags in a user profile;means to multiply each datum's score by a temporal coefficient for amatch between the datum's temporal tag and a temporal tag in a userprofile; means to multiply each datum's score by a demographiccoefficient for a match between the datum's demographic tags anddemographic tags in a user profile; means to select the highest scoringdata; and means to select a single datum from the remaining data.
 352. Asystem embodiment for coordinating personnel based on deliveredpersonnel directives, comprising: means to accumulate user activityinformation; means to accumulate user situational information; means toassociate the user activity interest information and user situationalinformation with a user profile; means to update the user profile withthe associated information in a database; means to analyze accumulatedinformation associated with the user profile; means to query aninformation database based on the analysis of the user profile; means toselect information based on the user profile to include in a personneldirective; and means to send the personnel directive to a user.
 353. Asystem embodiment for coordinating personnel by serving personneldirectives to a mobile device, comprising: means to receive at a servermessages from a user comprised of user identification, mobile deviceidentification, a code image scanned by the mobile device, time of thescan, and user geographic location at the time of the scan, wherein themessages are sent to a short code address via MMS; means to associatethe user identification with a user profile in a database; means toupdate the user profile with the received messages; means to enhance thecode image scanned by the mobile device; means to analyze theaccumulated messages in the user profile; means to determine properinformation to serve to the user based on the received message and theuser profile; means to select the information to serve to the user froma database; means to incorporate the selected information into apersonnel directive; and means to send the personnel directive to theuser's mobile device via MMS.
 354. A system embodiment for receivingpersonnel directives, comprising: means to accumulate user activityinformation; means to accumulate user situational information; means toincorporate user activity information in an activity message; means toincorporate user situational information in a situational message; meansto send the activity message to a server; means to send the situationalmessage to the server; and means to receive a personnel directive basedon the activity message, the situational message, and a user profile.355. A system embodiment for coordinating personnel based on deliveredpersonnel directives, comprising: means to accumulate user activityinformation; means to accumulate user situational information; means toanalyze the user activity interest information and user situationalinformation; means to predict expected user activity and situationalinformation from the analysis; means to determine serving information toserve to a user based on expected user activity and situationalinformation; means to select the information to serve from a database;means to incorporate the selected information into a personneldirective; means to determine a target time and place to send thepersonnel directive; means to incorporate the personnel directive andtarget time and place into a message; and means to send the message fordistribution.
 356. A system embodiment for selecting data from adatabase based on user activity information and employment status,comprising: means to filter data in the database by user employmentstatus tags; means to filter data in the database by activity subjecttags; means to determine which remaining data match: user geographiclocation tags; user temporal tags; means to select the data with thegreatest number of matches; and means to choose a single datum from theremaining data.
 357. A system embodiment for selecting data from adatabase based on employment status, subject, and time, comprising:means to assign the same initial score to every datum; means to multiplyeach datum's score by a status coefficient for every match between thedatum's employment status tag and employment status tag in a userprofile; means to multiply each datum's score by a subject coefficientfor every match between the datum's subject tag and subject tags in auser profile; means to multiply each datum's score by a temporalcoefficient for a match between the datum's temporal tag and a temporaltag in a user profile; means to select the highest scoring data; andmeans to select a single datum from the remaining data.
 358. A systemembodiment for generating proximity notifications indicating proximitiesbetween users, comprising: means to accumulate user situationalinformation; means to accumulate user association information; means toanalyze the user situational information; means to predict expected userinterest and situational information from the analysis; means todetermine if a user is in proximity with other users contained in theuser association information; and means to notify a user of theproximity.
 359. A system embodiment for serving information to userswithin a virtual world based on accumulated user information,comprising: means to accumulate user activity interest information;means to accumulate user situational information; means to associate theuser activity interest information and user situational information witha user profile; means to update the user profile with the associatedinformation in a database; means to analyze accumulated informationassociated with the user profile; means to query an information databasebased on the analysis of the user profile; means to select informationbased on the user profile to include in a message; and means to servethe message in a virtual world.
 360. A system embodiment for servinginformation in a virtual world based on accumulated user information,comprising: means to receive messages from a user comprised of useridentification, a user decision within a virtual world, time of thedecision, and user location within the virtual world at the time of thedecision; means to associate the user identification with a user profilein a database; means to update the user profile with the receivedmessages; means to analyze the accumulated messages in the user profile;means to determine proper information to serve to the user based on thereceived message and the user profile; means to select the informationto serve to the user from a database; means to incorporate the selectedinformation into a reply message; and means to serve the reply messagewithin the virtual world.
 361. A system embodiment for receivinginformation within a virtual world, comprising: means to accumulate useractivity interest information; means to accumulate user situationalinformation; means to incorporate user activity interest information inan interest message; means to incorporate user situational informationin a situational message; means to send the interest message to aserver; means to send the situational message to the server; and meansto receive a reply that is displayed within a virtual world based on theinterest message, the situational message, and a user profile.
 362. Asystem embodiment for serving information within a virtual world basedon accumulated user information, comprising: means to accumulate useractivity interest information; means to accumulate user situationalinformation; means to analyze the user activity interest information anduser situational information; means to predict expected user interestand situational information from the analysis; means to determineserving information to serve to a user based on expected user interestand situational information; means to select the information to servefrom a database; means to incorporate the selected information into amessage; means to determine a target time and place to send a message;means to incorporate serving information and target time and place intoa message; and means to send the message for distribution within avirtual world.
 363. A system embodiment for selecting data from adatabase based on user virtual world activity interest and situationalinformation, comprising: means to filter data in the database by virtualworld decision subject tags; means to determine which remaining datamatch: user demographic category tags; user virtual world location tags;user temporal tags; means to select the data with the greatest number ofmatches; and means to choose a single datum from the remaining data.364. A system embodiment for selecting data from a database based on avirtual world location, comprising: means to assign the same initialscore to every datum; means to multiply each datum's score by a subjectcoefficient for every match between the datum's subject tag and subjecttags in a user profile; means to multiply each datum's score by atemporal coefficient for a match between the datum's temporal tag and atemporal tag in a user profile; means to multiply each datum's score bya demographic coefficient for a match between the datum's demographictags and demographic tags in a user profile; means to multiply eachdatum's score by a virtual world location coefficient for every matchbetween the datum's virtual world location tags and the virtual worldlocation tags in the user profile; means to select the highest scoringdata; and means to select a single datum from the remaining data.
 365. Asystem embodiment for tracking user information on the internet andserving information to users based thereon, comprising: means toaccumulate user activity interest information; means to accumulate usersituational information; means to associate the user activity interestinformation and user situational information with a user profile; meansto update the user profile with the associated information in adatabase; means to analyze accumulated information associated with theuser profile; means to query an information database based on theanalysis of the user profile; means to select information based on theuser profile to include in a message; and means to serve the message ona website.
 366. A system embodiment for tracking user information on theinternet and serving information to a mobile device based thereon,comprising: means to receive messages from a user comprised of useridentification, mobile device identification, a code scanned by themobile device, time of the scan, and user geographic location at thetime of the scan; means to associate the user identification with a userprofile in a database; update the user profile with the receivedmessages; means to analyze the accumulated messages in the user profile;means to determine proper information to serve to the user based on thereceived message and the user profile; means to select the informationto serve to the user from a database; means to incorporate the selectedinformation into a reply message; and means to serve the reply messageon a website.
 367. A system embodiment for receiving information on theinternet based on accumulated user information, comprising: means toaccumulate user activity interest information; means to accumulate usersituational information; means to incorporate user activity interestinformation in an interest message; means to incorporate usersituational information in a situational message; means to send theinterest message to a server; means to send the situational message tothe server; and means to receive a reply that is displayed on a websitebased on the interest message, the situational message, and a userprofile.
 368. A system embodiment for serving information on a websitebased on accumulated user information, comprising: means to accumulateuser activity interest information; means to accumulate user situationalinformation; means to analyze the user activity interest information anduser situational information; means to predict expected user interestand situational information from the analysis; means to determineserving information to serve to a user based on expected user interestand situational information; means to select the information to servefrom a database; means to incorporate the selected information into amessage; means to determine a target time and place to send a message;means to incorporate serving information and target time and place intoa message; and means to send the message for distribution on a website.369. A system embodiment for selecting data from a database based onuser website interest information, comprising: means to filter data inthe database by website subject tags; means to determine which remainingdata match: user demographic category tags; user current website tags;user temporal tags; means to select the data with the greatest number ofmatches; and means to choose a single datum from the remaining data.370. A system embodiment for selecting data from a database based oncorrelations between a user profile and a datum's website association,comprising: means to assign the same initial score to every datum; meansto multiply each datum's score by a subject coefficient for every matchbetween the datum's subject tag and subject tags in a user profile;means to multiply each datum's score by a temporal coefficient for amatch between the datum's temporal tag and a temporal tag in a userprofile; means to multiply each datum's score by a demographiccoefficient for a match between the datum's demographic tags anddemographic tags in a user profile; means to multiply each datum's scoreby a website coefficient for every match between the datum's websitetags and the website tags in the user profile; means to select thehighest scoring data; and means to select a single datum from theremaining data.
 371. A system embodiment for processing and respondingto ambiguous content requests, comprising: means to receive a scannedcode image and a user ID; means to analyze the scanned code image todetermine if the information encoded therein is fully accessible; meansto select a scanned code disambiguation process to apply to the scannedcode images if the information encoded therein is not fully accessible;means to apply the scanned code disambiguation process to the scannedcode image to determine a most likely code; means to query accumulateduser information in a user profile associated with the user ID; means toquery a content database to extract requested content based on the mostlikely code and the accumulated user information; and means to send therequested content to a user.
 372. An system for processing andresponding to ambiguous content requests, comprising: means to receive ascanned code image, a user ID, wherein the scanned code image is sent toa short code address via MMS; means to analyze the scanned code image todetermine if the information encoded therein is fully accessible; meansto select a server-side scanned code disambiguation process to apply tothe scanned code images if the information encoded therein is not fullyaccessible, wherein the scanned code disambiguation process comprisesany combination of scanned code image enhancement and partial decoding;means to apply the server-side scanned code disambiguation process tothe scanned code image to determine a most likely code; means to queryaccumulated user information in a user profile associated with the userID; means to query a content database to extract requested content basedon the most likely code and the accumulated user information; and meansto send the requested content to a user via MMS.
 373. Aprocessor-accessible medium embodiment for serving ambient conditionsensitive information to a mobile user, comprising: processor readableinstructions stored in the processor-accessible medium, wherein theprocessor readable instructions are issuable by the processor to:accumulate user activity interest information; accumulate usersituational information; associate the user activity interestinformation and user situational information with a user profile; updatethe user profile with the associated information in a database; analyzeaccumulated information associated with the user profile; query aninformation database based on the analysis of the user profile; selectinformation based on the user profile and ambient conditions at a userlocation to include in a message; and send the message to a user.
 374. Aprocessor-accessible medium embodiment for serving ambient conditionsensitive information to a mobile user, comprising: processor readableinstructions stored in the processor-accessible medium, wherein theprocessor readable instructions are issuable by the processor to:receive at a server messages from a user comprised of useridentification, mobile device identification, a code image scanned bythe mobile device, time of the scan, and user geographic location at thetime of the scan, wherein the messages were sent to a short code addressvia MMS; associate the user identification with a user profile in adatabase; update the user profile with the received messages; enhancethe code image scanned by the mobile device; analyze the accumulatedmessages in the user profile; determine proper information to serve tothe user based on the received message, the user profile, and ambientconditions at a user location; select the information to serve to theuser from a database; incorporate the selected information into a replymessage; and send the reply message to the user's mobile device via MMS.375. A processor-accessible medium embodiment for receiving ambientcondition sensitive information, comprising: processor readableinstructions stored in the processor-accessible medium, wherein theprocessor readable instructions are issuable by the processor to:accumulate user activity interest information; accumulate usersituational information, including ambient conditions at a userlocation; incorporate user activity interest information in an interestmessage; incorporate user situational information in a situationalmessage; sending the interest message to a server; sending thesituational message to the server; and receive a reply based on theinterest message, the situational message, and a user profile.
 376. Aprocessor-accessible medium embodiment of serving ambient conditionsensitive information, comprising: processor readable instructionsstored in the processor-accessible medium, wherein the processorreadable instructions are issuable by the processor to: accumulate useractivity interest information; accumulate user situational information;analyze the user activity interest information and user situationalinformation; predict expected user interest and situational informationfrom the analysis; determine serving information to serve to a userbased on expected user interest information, expected user situationalinformation, and ambient conditions at a user location; select theinformation to serve from a database; incorporate the selectedinformation into a message; determine a target time and place to send amessage; incorporate serving information and target time and place intoa message; and send the message for distribution.
 377. Aprocessor-accessible medium embodiment for accumulating user informationand delivering targeted content based thereon, comprising: processorreadable instructions stored in the processor-accessible medium, whereinthe processor readable instructions are issuable by the processor to:accumulate user activity interest information; accumulate usersituational information; associate the user activity interestinformation and user situational information with a user profile; updatethe user profile with the associated information in a database; analyzeaccumulated information associated with the user profile; query aninformation database based on the analysis of the user profile; selectinformation based on the user profile to include in a message; and sendthe message to a user.
 378. A processor-accessible medium embodiment foraccumulating mobile device code scan information from a user anddelivering content based thereon, comprising: processor readableinstructions stored in the processor-accessible medium, wherein theprocessor readable instructions are issuable by the processor to:receive at a server messages from a user comprised of useridentification, mobile device identification, a code image scanned bythe mobile device, time of the scan, and user geographic location at thetime of the scan, wherein the messages were sent to a shortcode addressvia MMS; associate the user identification with a user profile in adatabase; update the user profile with the received messages; enhancethe code image scanned by the mobile device; analyze the accumulatedmessages in the user profile; determine proper information to serve tothe user based on the received message and the user profile; select theinformation to serve to the user from a database; incorporate theselected information into a reply message; and send the reply message tothe user's mobile device via MMS.
 379. A processor-accessible mediumembodiment for receiving information based on accumulated user activityand situational information, comprising: processor readable instructionsstored in the processor-accessible medium, wherein the processorreadable instructions are issuable by the processor to: accumulate useractivity interest information; accumulate user situational information;incorporate user activity interest information in an interest message;incorporate user situational information in a situational message; sendthe interest message to a server; send the situational message to theserver; and receive a reply based on the interest message, thesituational message, and a user profile.
 380. A processor-accessiblemedium embodiment of selecting data from a database based on useractivity interest information, comprising: processor readableinstructions stored in the processor-accessible medium, wherein theprocessor readable instructions are issuable by the processor to: filterdata in the database by activity subject tags; determine which remainingdata match: user demographic category tags; user geographic locationtags; user temporal tags; select the data with the greatest number ofmatches; and choose a single datum from the remaining data.
 381. Aprocessor-accessible medium embodiment for predicting user interest andsituations and supplying information to the user based thereon,comprising: processor readable instructions stored in theprocessor-accessible medium, wherein the processor readable instructionsare issuable by the processor to: accumulate user activity interestinformation; accumulate user situational information; analyze the useractivity interest information and user situational information; predictexpected user interest and situational information from the analysis;determine serving information to serve to a user based on expected userinterest and situational information; select the information to servefrom a database; incorporate the selected information into a message;determine a target time and place to send a message; incorporate servinginformation and target time and place into a message; and send themessage for distribution.
 382. A processor-accessible medium embodimentfor predicting user interest and situations and supplying information tothe user based thereon, comprising: processor readable instructionsstored in the processor-accessible medium, wherein the processorreadable instructions are issuable by the processor to: accumulate at aserver a plurality of code images scanned by a user's mobile device andsent to a short code address via MMS; accumulate user situationalinformation; analyze the user activity interest information and usersituational information; predict expected user interest and situationalinformation from the analysis; determine serving information to serve toa user based on expected user interest and situational information;select the information to serve from a database; incorporate theselected information into a message; determine a target time and placeto send a message; incorporate serving information and target time andplace into a message; and send the message for distribution via MMS.383. A processor-accessible medium embodiment for scoring data based ona user profile and situational information and selecting data from adatabase, comprising: processor readable instructions stored in theprocessor-accessible medium, wherein the processor readable instructionsare issuable by the processor to: assign the same initial score to everydatum; multiply each datum's score by a subject coefficient for everymatch between the datum's subject tag and subject tags in a userprofile; multiply each datum's score by a temporal coefficient for amatch between the datum's temporal tag and a temporal tag in a userprofile; multiply each datum's score by a demographic coefficient for amatch between the datum's demographic tags and demographic tags in auser profile; select the highest scoring data; and select a single datumfrom the remaining data.
 384. A processor-accessible medium embodimentfor coordinating personnel based on delivered personnel directives,comprising: processor readable instructions stored in theprocessor-accessible medium, wherein the processor readable instructionsare issuable by the processor to: accumulate user activity information;accumulate user situational information; associate the user activityinterest information and user situational information with a userprofile; update the user profile with the associated information in adatabase; analyze accumulated information associated with the userprofile; query an information database based on the analysis of the userprofile; select information based on the user profile to include in apersonnel directive; and send the personnel directive to a user.
 385. Aprocessor-accessible medium embodiment for coordinating personnel byserving personnel directives to a mobile device, comprising: processorreadable instructions stored in the processor-accessible medium, whereinthe processor readable instructions are issuable by the processor to:receive at a server messages from a user comprised of useridentification, mobile device identification, a code image scanned bythe mobile device, time of the scan, and user geographic location at thetime of the scan, wherein the messages are sent to a short code addressvia MMS; associate the user identification with a user profile in adatabase; update the user profile with the received messages; enhancethe code image scanned by the mobile device; analyze the accumulatedmessages in the user profile; determine proper information to serve tothe user based on the received message and the user profile; select theinformation to serve to the user from a database; incorporate theselected information into a personnel directive; and send the personneldirective to the user's mobile device via MMS.
 386. Aprocessor-accessible medium embodiment for receiving personneldirectives, comprising: processor readable instructions stored in theprocessor-accessible medium, wherein the processor readable instructionsare issuable by the processor to: accumulate user activity information;accumulate user situational information; incorporate user activityinformation in an activity message; incorporate user situationalinformation in a situational message; send the activity message to aserver; send the situational message to the server; and receive apersonnel directive based on the activity message, the situationalmessage, and a user profile.
 387. A processor-accessible mediumembodiment for coordinating personnel based on delivered personneldirectives, comprising: processor readable instructions stored in theprocessor-accessible medium, wherein the processor readable instructionsare issuable by the processor to: accumulate user activity information;accumulate user situational information; analyze the user activityinterest information and user situational information; predict expecteduser activity and situational information from the analysis; determineserving information to serve to a user based on expected user activityand situational information; select the information to serve from adatabase; incorporate the selected information into a personneldirective; determine a target time and place to send the personneldirective; incorporate the personnel directive and target time and placeinto a message; and send the message for distribution.
 388. Aprocessor-accessible medium embodiment for selecting data from adatabase based on user activity information and employment status,comprising: processor readable instructions stored in theprocessor-accessible medium, wherein the processor readable instructionsare issuable by the processor to: filter data in the database by useremployment status tags; filter data in the database by activity subjecttags; determine which remaining data match: user geographic locationtags; user temporal tags; select the data with the greatest number ofmatches; and choose a single datum from the remaining data.
 389. Aprocessor-accessible medium embodiment for selecting data from adatabase based on employment status, subject, and time, comprising:processor readable instructions stored in the processor-accessiblemedium, wherein the processor readable instructions are issuable by theprocessor to: assign the same initial score to every datum; multiplyeach datum's score by a status coefficient for every match between thedatum's employment status tag and employment status tag in a userprofile; multiply each datum's score by a subject coefficient for everymatch between the datum's subject tag and subject tags in a userprofile; multiply each datum's score by a temporal coefficient for amatch between the datum's temporal tag and a temporal tag in a userprofile; select the highest scoring data; and select a single datum fromthe remaining data.
 390. A processor-accessible medium embodiment forgenerating proximity notifications indicating proximities between users,comprising: processor readable instructions stored in theprocessor-accessible medium, wherein the processor readable instructionsare issuable by the processor to: accumulate user situationalinformation; accumulate user association information; analyze the usersituational information; predict expected user interest and situationalinformation from the analysis; determine if a user is in proximity withother users contained in the user association information; and notify auser of the proximity.
 391. A processor-accessible medium embodiment forserving information to users within a virtual world based on accumulateduser information, comprising: processor readable instructions stored inthe processor-accessible medium, wherein the processor readableinstructions are issuable by the processor to: accumulate user activityinterest information; accumulate user situational information; associatethe user activity interest information and user situational informationwith a user profile; update the user profile with the associatedinformation in a database; analyze accumulated information associatedwith the user profile; query an information database based on theanalysis of the user profile; select information based on the userprofile to include in a message; and serve the message in a virtualworld.
 392. A processor-accessible medium embodiment for servinginformation in a virtual world based on accumulated user information,comprising: processor readable instructions stored in theprocessor-accessible medium, wherein the processor readable instructionsare issuable by the processor to: receive messages from a user comprisedof user identification, a user decision within a virtual world, time ofthe decision, and user location within the virtual world at the time ofthe decision; associate the user identification with a user profile in adatabase; update the user profile with the received messages; analyzethe accumulated messages in the user profile; determine properinformation to serve to the user based on the received message and theuser profile; select the information to serve to the user from adatabase; incorporate the selected information into a reply message; andserve the reply message within the virtual world.
 393. Aprocessor-accessible medium embodiment for receiving information withina virtual world, comprising: processor readable instructions stored inthe processor-accessible medium, wherein the processor readableinstructions are issuable by the processor to: accumulate user activityinterest information; accumulate user situational information;incorporate user activity interest information in an interest message;incorporate user situational information in a situational message; sendthe interest message to a server; send the situational message to theserver; and receive a reply that is displayed within a virtual worldbased on the interest message, the situational message, and a userprofile.
 394. A processor-accessible medium embodiment for servinginformation within a virtual world based on accumulated userinformation, comprising: processor readable instructions stored in theprocessor-accessible medium, wherein the processor readable instructionsare issuable by the processor to: accumulate user activity interestinformation; accumulate user situational information; analyze the useractivity interest information and user situational information; predictexpected user interest and situational information from the analysis;determine serving information to serve to a user based on expected userinterest and situational information; select the information to servefrom a database; incorporate the selected information into a message;determine a target time and place to send a message; incorporate servinginformation and target time and place into a message; and send themessage for distribution within a virtual world.
 395. Aprocessor-accessible medium embodiment for selecting data from adatabase based on user virtual world activity interest and situationalinformation, comprising: processor readable instructions stored in theprocessor-accessible medium, wherein the processor readable instructionsare issuable by the processor to: filter data in the database by virtualworld decision subject tags; determine which remaining data match:\ userdemographic category tags; user virtual world location tags; usertemporal tags; select the data with the greatest number of matches; andchoose a single datum from the remaining data.
 396. Aprocessor-accessible medium embodiment for selecting data from adatabase based on a virtual world location, comprising: processorreadable instructions stored in the processor-accessible medium, whereinthe processor readable instructions are issuable by the processor to:assign the same initial score to every datum; multiply each datum'sscore by a subject coefficient for every match between the datum'ssubject tag and subject tags in a user profile; multiply each datum'sscore by a temporal coefficient for a match between the datum's temporaltag and a temporal tag in a user profile; multiply each datum's score bya demographic coefficient for a match between the datum's demographictags and demographic tags in a user profile; multiply each datum's scoreby a virtual world location coefficient for every match between thedatum's virtual world location tags and the virtual world location tagsin the user profile; select the highest scoring data; and select asingle datum from the remaining data.
 397. A processor-accessible mediumembodiment for tracking user information on the internet and servinginformation to users based thereon, comprising: processor readableinstructions stored in the processor-accessible medium, wherein theprocessor readable instructions are issuable by the processor to:accumulate user activity interest information; accumulate usersituational information; associate the user activity interestinformation and user situational information with a user profile; updatethe user profile with the associated information in a database; analyzeaccumulated information associated with the user profile; query aninformation database based on the analysis of the user profile; selectinformation based on the user profile to include in a message; and servethe message on a website.
 398. A processor-accessible medium embodimentfor tracking user information on the internet and serving information toa mobile device based thereon, comprising: processor readableinstructions stored in the processor-accessible medium, wherein theprocessor readable instructions are issuable by the processor to:receive messages from a user comprised of user identification, mobiledevice identification, a code scanned by the mobile device, time of thescan, and use geographic location at the time of the scan; associate theuser identification with a user profile in a database; update the userprofile with the received messages; analyze the accumulated messages inthe user profile; determine proper information to serve to the userbased on the received message and the user profile; select theinformation to serve to the user from a database; incorporate theselected information into a reply message; and serve the reply messageon a website.
 399. A processor-accessible medium embodiment forreceiving information on the internet based on accumulated userinformation, comprising: processor readable instructions stored in theprocessor-accessible medium, wherein the processor readable instructionsare issuable by the processor to: accumulate user activity interestinformation; accumulate user situational information; incorporate useractivity interest information in an interest message; incorporate usersituational information in a situational message; send the interestmessage to a server; send the situational message to the server; andreceive a reply that is displayed on a website based on the interestmessage, the situational message, and a user profile.
 400. Aprocessor-accessible medium embodiment for serving information on awebsite based on accumulated user information, comprising: processorreadable instructions stored in the processor-accessible medium, whereinthe processor readable instructions are issuable by the processor to:accumulate user activity interest information; accumulate usersituational information; analyze the user activity interest informationand user situational information; predict expected user interest andsituational information from the analysis; determine serving informationto serve to a user based on expected user interest and situationalinformation; select the information to serve from a database;incorporate the selected information into a message; determine a targettime and place to send a message; incorporate serving information andtarget time and place into a message; and send the message fordistribution on a website.
 401. A processor-accessible medium embodimentfor selecting data from a database based on user website interestinformation, comprising: processor readable instructions stored in theprocessor-accessible medium, wherein the processor readable instructionsare issuable by the processor to: filter data in the database by websitesubject tags; determine which remaining data match: user demographiccategory tags; user current website tags; user temporal tags; select thedata with the greatest number of matches; and choose a single datum fromthe remaining data.
 402. A processor-accessible medium embodiment forselecting data from a database based on correlations between a userprofile and a datum's website association, comprising: processorreadable instructions stored in the processor-accessible medium, whereinthe processor readable instructions are issuable by the processor to:assign the same initial score to every datum; multiply each datum'sscore by a subject coefficient for every match between the datum'ssubject tag and subject tags in a user profile; multiply each datum'sscore by a temporal coefficient for a match between the datum's temporaltag and a temporal tag in a user profile; multiply each datum's score bya demographic coefficient for a match between the datum's demographictags and demographic tags in a user profile; multiply each datum's scoreby a website coefficient for every match between the datum's websitetags and the website tags in the user profile; select the highestscoring data; and select a single datum from the remaining data.
 403. Aprocessor-accessible medium embodiment for processing and responding toambiguous content requests, comprising: processor readable instructionsstored in the processor-accessible medium, wherein the processorreadable instructions are issuable by the processor to: receive ascanned code image and a user ID; analyze the scanned code image todetermine if the information encoded therein is fully accessible; selecta scanned code disambiguation process to apply to the scanned codeimages if the information encoded therein is not fully accessible; applythe scanned code disambiguation process to the scanned code image todetermine a most likely code; query accumulated user information in auser profile associated with the user ID; query a content database toextract requested content based on the most likely code and theaccumulated user information; and send the requested content to a user.404. A processor-accessible medium embodiment for processing andresponding to ambiguous content requests, comprising: processor readableinstructions stored in the processor-accessible medium, wherein theprocessor readable instructions are issuable by the processor to:receive a scanned code image, a user ID, wherein the scanned code imageis sent to a short code address via MMS; analyze the scanned code imageto determine if the information encoded therein is fully accessible;select a server-side scanned code disambiguation process to apply to thescanned code images if the information encoded therein is not fullyaccessible, wherein the scanned code disambiguation process comprisesany combination of scanned code image enhancement and partial decoding;apply the server-side scanned code disambiguation process to the scannedcode image to determine a most likely code; query accumulated userinformation in a user profile associated with the user ID; query acontent database to extract requested content based on the most likelycode and the accumulated user information; and send the requestedcontent to a user via MMS.